0

小さなテクスチャのグリッドであり、このアプリケーションでは個々のファイルに分割できないテクスチャがあります。モデルの上にこれらのサブテクスチャを並べる必要があります。

ジオメトリの分割は機能しますが、シーンの複雑さが増し、細い三角形が生成されると視覚的なアーティファクトが発生する可能性があります。

実行時にオリジナルからコピーされた新しいテクスチャを割り当てることは機能しますが、テクスチャ メモリの使用量が増加し、プライマリ テクスチャが変更された場合 (このアプリケーションでは検出できません)、古いデータが含まれます。

サブテクスチャを直接バインドして OpenGL タイリングを機能させる方法が本当にない場合、次善の方法は何でしょうか?

4

1 に答える 1

1

これを行う必要がある場合、正しい方法は、フラグメント シェーダーを使用してテクスチャ座標を直接並べることです。

これはやり過ぎのようで、アプリケーションの既存のレンダリング パイプラインに干渉する可能性があります。

干渉する唯一の方法は、フラグメント シェーダーを使用していない場合です。そして、そうでないなら... そうあるべきです。

一般に、最新のハードウェア設計では固定機能が追加されなくなりました。シェーダーにより多くのパワーとオプションを与えることがすべてです。機能が必要な場合は、「シェーダーでコーディングする」ことが一般的に正しい解決策です。

ただし、シェーダーの使用が許可されていない場合、唯一の代替手段は、提案したようにジオメトリを変更することです。

于 2012-08-15T01:06:29.787 に答える