タグ付けされた質問 「picking」

5
2Dでは、ポイントに最も近いオブジェクトを効率的に見つけるにはどうすればよいですか?
かなりのゲームエンジンを持っているので、ポイントのリストの中で最も近いものを見つける機能が欲しいのですが。 ピタゴラスの定理を使用して各距離を見つけ、最小距離を選択することができますが、それにはすべての距離を反復する必要があります。 衝突システムもあり、基本的にはオブジェクトを小さなグリッド(ミニマップのようなもの)上の小さなオブジェクトに変え、同じグリッド空間にオブジェクトが存在する場合にのみ衝突をチェックします。グリッド間隔を大きくするだけで、近接性を確認できます。(すべての単一オブジェクトをチェックするのではなく。)ただし、それは私の基本クラスで追加のセットアップが必要になり、既に散らかったオブジェクトを散らかします。その価値はありますか? ポイントとサイズのリストに基づいて、最も近いオブジェクトを検出するために使用できる効率的かつ正確なものはありますか?
35 c++  2d  algorithm  vector  picking 


2
2D移動(マウスから)を3D軸に沿った変位に変換するにはどうすればよいですか?
小さな3Dシーンエディターを作成しています(オブジェクトの位置の変更のみが可能です)。 各オブジェクトは、3D X / Y / Z軸で描画されます。 仕組み:ユーザーは軸(X、Y、Z)を左クリックして選択し、左クリックを押したままマウスを移動します(オブジェクトを軸方向に移動します)。選択はすでに問題ありhow muchませんが、2Dマウスの動きに応じて、選択した軸に対してオブジェクトを移動する必要があることを知りたいのですが。 例として、この図では、X軸を選択してマウスを左右に動かすと、上下に動かすよりも大きな変位が得られます(この場合はほぼゼロ)。 それは本当にシンプルでなければならないが、私はそれを理解することができません。 入力は、最初の左クリックからのマウスの変位(2Dベクトル)、選択された軸ベクトル(3dベクトル)、モデルビュー/投影行列です。 出力:量(floatまたはdouble)
8 3d  mouse  picking  axis 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.