0

現在、Directx 11で同じオブジェクトを複数回レンダリングするという問題に直面しています。これは、オブジェクトに次のような問題があります。

  • ディフューズシェーダー
  • 指向性照明シェーダー
  • テクスチャシェーダー

これで、最終的な色は、何らかの形でそれらすべてを組み合わせる必要があります。おそらく次のようになります。

  • ディフューズをレンダリング
  • テクスチャをレンダリングする
  • 方向性をレンダリング

最終的な色=(拡散+テクスチャ)*照明//これについてはよくわかりませんが

しかし、これをどのようにアーカイブすることができますか?エフェクトフレームワークなし!

4

1 に答える 1

0

DirectX11ではいくつかの方法で実現できます。1つ目は、「uberシェーダー」を作成することです。これは、同じシェーダーで拡散、テクスチャ、およびライティングを行うことを意味します。2つ目は、動的シェーダーリンクを使用し、実行時に一意の拡散/テクスチャ/照明シェーダーを動的にリンクすることです。2010年6月のSDKには、動的シェーダーリンクの良い例があります。また、通常の色の組み合わせは次のとおりです。

最終的な色=拡散*テクスチャ*照明

于 2013-02-16T10:26:18.563 に答える