OpenGL では、どちらがより良いパフォーマンスをもたらすでしょうか。カリングされた面を変更するには、またはオブジェクトを回転するには?
シナリオは次のとおりです。
シェーダーにフィードするマトリックスを計算します。これにより、特定のカリング位置 (前面) にテクスチャ A が描画されます。オブジェクトを前から見ると見えますが、後ろからは見えません。これが私の望ましい動作です。ここで、後ろに「何か」を追加したいと思います。テクスチャ B としましょう。これにより、オブジェクトを後ろから見たときに、この他のテクスチャがテクスチャ A と同じ位置と向きで表示されますが、テクスチャ B が表示されます。
私は、2 つの側面を持つ立方体を構築する以外に、以前のオブジェクトの「上に再描画」することができると考えました。オブジェクトを回転させる場合、OpenGL はフェース カリング テストに合格しないため、テクスチャ A を単純に上書きしないと想定できると思います。これには、mi オブジェクトを独自の軸でミラーリングするために、追加の行列乗算が 1 つ必要です。しかし、単にカリング プロパティを変更して描画しようとするとどうなるでしょうか。テキストを前から失敗させ、後ろから渡すのと同じ効果があるのではないでしょうか?
これら2つのオプションのどちらが優れていますか?
(PD: 私はこれを iPhone で行っているので、すべてのパフォーマンスが古いデバイスに関連しています。)
ありがとうございました。