[過去ログ]
delphiでMMO (154レス)
delphiでMMO http://peace.5ch.net/test/read.cgi/gamedev/1072515100/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
92: 91 [sage] 04/07/10 14:06 ID:mnKwxbw9 3D座標を2D座標にするのは // ワールドマトリクスで座標変換します。 pos := Figure.TopFrame.LocalToWorld(testFigure.TopFrame.GetTranslation(testFigure.TopFrame)); Hgpos := NowHomoginize(pos); // ビューマトリクスで座標変換します。 Hgpos:=NowTransform(Hgpos, NowInvMatrix(Camera.WorldMatrix)); // プロジェクションマトリクスで座標変換します。 Hgpos:=NowTransform(Hgpos, (Scene.ProjectionMatrix));//ScreenMatrix // ビューポート情報からクライアント座標を取得します。 Hgpos.x := (Hgpos.X / Hgpos.W * 800 / 2) +800 / 2; Hgpos.y := -(Hgpos.Y / Hgpos.W * 600 / 2) +600 / 2; これで出来たっぽい 2D座標を3D座標にするのはこれの逆をやればよいから・・・ こうか?? pos.X := マウス座標X; pos.Y := マウス座標Y; pos.Z := 1; //W付きに変換 Hgpos := NowHomoginize(pos); // クライアント座標からビューポート情報を取得します。 Hgpos.x := (Hgpos.X -800 / 2) * Hgpos.W/(800 * 2); Hgpos.y := -(Hgpos.Y -600 / 2)*Hgpos.W/(600 * 2); // プロジェクションマトリクスで座標変換します。 Hgpos:=NowTransform(Hgpos, NowInvMatrix(Scene.ProjectionMatrix)); // ビューマトリクスで座標変換します。 Hgpos:=NowTransform(Hgpos, (Camera.WorldMatrix)); pos := NowHeteroginize(Hgpos); testFigure.Figure.TopFrame.SetTranslation(Camera ,pos); 出来ない _no http://peace.5ch.net/test/read.cgi/gamedev/1072515100/92
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 62 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.004s