3

3D ワールドのデータを生成する .NET ライブラリを作成していますが、レンダリング自体は行いません。データに基づいてレンダリングするために、XNA、DirectX、OpenGLなどに当てはまります(エンドコーダーがこれを行います)。世界のデータを最も理にかなった形式で提供したいと考えています。XNA では、"Z" は画面内に入り、"X" は左右に移動し、"Y" は上下に移動します (私のテストに基づく)。これと同じ形式でワールド データを配信できますが、XNA に依存させたくありません。これは、軸方向の最も一般的な形式ですか? 私は常に物事を「Z」が上下、「Y」が画面内にあると視覚化するので、ワールド データをこの形式で配信し、それを XNA ブートストラップで変換するだけでした。その向きでデータを使用し、

アドバイスをいただきありがとうございます。ありがとうございました。

また、ワールドデータは基本的に地形データなので、上下するべきもの、山など論理的な構造になっています。

4

2 に答える 2

2

「普遍的な」座標系はありません。

通常、OpenGL はデフォルトで右利きを使用しています。通常、Direct3D は既定で左手座標系を使用しています。ただし、どちらも左手または右手の座標系を処理できます。ただし、これを使用しても、ワールド座標をビューに変換するさまざまな方法があり、異なるシステムでは異なる規則が使用されます。

モデルを生成する何かを作成していて、それを基礎となるシステムで使用したい場合ユーザー提供の座標系を持ち、それを使用してビルドできるようにすると、ライブラリがより便利になる可能性があります。変換を行うのは比較的簡単です。

于 2011-12-05T18:54:17.990 に答える
1

はい、ビデオ ゲームのプログラミングでは、DirectX がしばらくの間最も人気のある 3D ライブラリであったため、左手 X を右に、Y を上に、Z を前方に、現在もなお最も一般的な軸規則が使用されています。

ただし、XNA の数学クラスはすべて右手の規則に切り替えられていることに注意してください。そのため、左手系で作業する場合は、外積などの一部の結果を反転する必要があります。

于 2011-12-05T18:52:02.927 に答える