固定関数パイプラインを使用して、クリア カラーをフォグと同じ色に設定し、完全にフォグを有効にすることができました。シェーダーを使用するようになったので、フォグを適用するには GLSL を使用する必要があることがわかりました。私が理解している問題は、ピクセル シェーダーがラスター化された各ポリゴンのすべてのピクセルでのみ実行される場合、ポリゴンがない領域で強制的に実行するにはどうすればよいかということです。霧に合わせてクリアカラーを設定するだけですか?スカイドームは必要ですか?
2 に答える
3
以前と同じように機能します。背景がクリア カラーのみの場合、クリア カラーはフォグ カラーと一致する必要があります。
于 2012-08-05T00:08:10.803 に答える
0
ニコルが言ったように、それは少しの変更でそのまま動作するはずです。
では、どうしますか?クリアカラーを遠端のフォグカラーに設定してから、フォグコンポーネント関数をピクセル/フラグメントシェーダーに統合することをお勧めします。このようにして、フォグの方程式を必要に応じて複雑にすることができます。これには、非線形を含め、「ボリュームエリアフォグ効果」の導入を可能にする確率的ノイズに依存することができます(一部のエリアは、より霧が多く見える場合があります)。他の人は「曇った」方法で)。後者の効果は、フォグ方程式またはノイズを指定する(またはフォグ比を調べる)画面座標テクスチャの読み取りを追加することで簡単に実行できます。
幸運を
于 2012-11-11T17:50:37.797 に答える