私の個人的なプロジェクトでは、次のことを行う必要があります。
3Dオブジェクトから2D平面への透視投影を生成します(空間で定義されたポイント上で、カメラになります)。
パースペクティブprojectioの正確なエリア/ポイント座標を取得します
一部のオブジェクトが他のオブジェクトの背後にある可能性がある複数の3Dオブジェクトの透視投影を生成します。
シーンをレンダリングします(画像は1つだけで、アニメーションはないため、リアルタイムレンダリングは必要ありません)。
ポイント1、2、4については、PyGameを使用してこれを行う方法を見つけたと思います: http://codentronix.com/2011/04/21/rotating-3d-wireframe-cube-with-python/
しかし、ポイント3については、各オブジェクトの透視投影を取得できたとしても、実際に表示されているオブジェクトと表示されていないオブジェクト(オブジェクト全体またはその一部)をどのように知ることができるので、行き詰まっています。
オブジェクトのどの部分が表示され、どの部分が表示されないかを正確に知る必要があります。したがって、最終的な目標は、すべてのオブジェクトの投影の領域が明確に定義された画面イメージのマトリックスを作成することです。
たとえば、マトリックスに画面イメージのすべてのピクセルが含まれていて、オブジェクトが10個ある場合、オブジェクトがない場合は0、オブジェクトn1が表示される場合は1、オブジェクトn2が表示される場合は2などになります。
私はPythonや他の多くの言語で熟練した開発者であることを付け加えなければなりませんが、これまでゲーム関連の開発やレンダリング開発を行ったことはありません。
誰かが私が正しい軌道に乗るのを手伝ってくれる?
PS:副次的な質問:PyGameよりも最適化されたパースペクティブプロジェクションとレンダリングの実装を教えていただければ、非常に興味があります。