異なるハードウェア間で一貫性のない動作をする OpenGL コードがあります。私はいくつかのコードを持っています:
- レンダー バッファーを作成し、テクスチャをそのカラー バッファー (テクスチャ A) にバインドします。
- このレンダー バッファをアクティブに設定し、ビューポートなどを調整します
- ピクセル シェーダー (この例ではガウス ブラー) をアクティブにします。
- テクスチャ A を使用してクワッドをフル スクリーンに描画します。
- レンダバッファなどのバインドを解除します。
私の開発マシンでは、これは正常に機能し、テクスチャを「その場で」ぼかすという意図した効果がありますが、他のハードウェアでは機能しないようです。
2つの可能性に絞り込みました。
A) renderbuffer をそれ自体にレンダーすることは想定されておらず、ある種のまぐれのために私の開発マシンでのみ機能します。
または
B) このアプローチは機能するはずですが、何か他の問題が発生しています。
何か案は?正直なところ、この問題に関する詳細を見つけるのに苦労しました。