これを「Z ファイティング」と呼びましたが、より一般的な用語は Z オーダーまたは Z バッファの問題です。
最初に図なしで問題を説明しようとします。
3D レンダラーは、ポリゴンを後ろから前に描画することで機能します。これは、各ポリゴンを個別の数の位置の 1 つに割り当てることによって行われます。これは、ほとんどのシーンで機能します。
どのポリゴンが別のポリゴンの前にあるかを判断するのに十分なスロットがない場合、問題が発生します。
それを解決するには、アプリケーションによって異なりますが、すべてに共通することがいくつかあります。
- ワールドの境界ボックスができるだけ小さいことを確認してください。
- ディスプレイの色深度を増やします。OpenGL と Direct3D はどちらも、z スロットの数をディスプレイの解像度に関連付けることができます。
- 三角形の数を増やしたり、サイズを小さくしたりします。小さい三角形はこれによる影響は少なくなりますが、描画するものが増えるにつれてパフォーマンスが低下します。
Windows で実行している場合は、デスクトップを最高の色解像度に設定する必要があります。アプリケーションは、使用するデフォルトとしてそれを選択する場合があります。
OpenGL と Direct3D のレンダリングを切り替えることはできますか? その場合は、両方を試してみてください。一方が他方よりも良い結果をもたらす可能性があります。