手順 手順としては、 スクリーン座標を逆変換してマウスの三次元空間(ローカル座標?)での位置を得る もとめた座標と視点を結ぶ直線と三角形が作る面の交点を求める 交点が三角形内にあるかどうかを判定する になります。 D3DX D3DXに必要な関数が大体そろっています。 が、どんな計算をしているかは本などで理解したほうがいいと思います。 D3DXVec3Unproject 通常行われる「モデル座標→ワールド座標→カメラ座標→射影後の座標→スクリーン座標」の逆変換を (たぶん)返します。 今回はワールド座標が必要です。 D3DXPlaneIntersectLine 2点で表される線と平面との交点座標を返します。 平面(D3DXPLANE)はD3DXPlaneFromPointsで求めることが出来ます。 問題点と訂正(2003/9/21) 下のtest_intersect
3Dのオブジェクトを画面に描画するための幾何学的な計算を考えてみましょう。 まず(全ての)基準となる座標系を定めます。これをワールド座標とかグローバル(大域)座標とか 絶対座標とか呼ぶようです。うちではワールド座標と呼ぶことにします。 次にオブジェクトに回転平行移動などを施してワールド座標でのオブジェクトの位置・方向を決定します。 見かたを変えてオブジェクトがオブジェクトに固有の座標系(これをローカル座標と呼びます)を基準として 作られていると考えると、オブジェクトのワールド座標から見た位置・方向というのは ローカル座標のワールド座標から見た位置・方向であり、ワールド座標でのオブジェクトの 位置・方向を決定するというのはローカル座標からワールド座標への変換ということになります。 …わかりづれ〜な。まぁやってることはどっちも同じです。こいつをワールド変換と呼びましょう。 さ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く