マルチパス テクスチャ ブレンド
Direct3D アプリケーションでは、複数のレンダリング パスでさまざまなテクスチャを 1 つのプリミティブに適用することで、多彩な特殊効果を実現することができます。 これは、一般にマルチパス テクスチャ ブレンドと呼ばれます。 通常、マルチパス テクスチャ ブレンドは、さまざまなテクスチャから複数のカラーを適用して、複雑なライティング モデルやシェーディング モデルの効果をエミュレートするために使用されます。 このような適用はライト マッピングと呼ばれます。 「テクスチャでのライト マッピング」をご覧ください。
注 デバイスによっては、単一パス内のプリミティブに複数のテクスチャを適用できます。 「テクスチャ ブレンド」をご覧ください。
ユーザーのハードウェアで複数テクスチャ ブレンドがサポートされていない場合、アプリケーションはマルチパス テクスチャ ブレンドを使って同じ視覚効果を実現できます。 ただし、アプリケーションは複数テクスチャ ブレンドを使ったときに生じる可能性があるフレーム レートに対応できません。
C/C++ アプリケーションでマルチパス テクスチャ ブレンドを実行するには
- テクスチャ ステージ 0 でテクスチャを設定します。
- 必要な色およびアルファ ブレンドの引数と操作を選択します。 既定の設定は、マルチパス テクスチャ ブレンドに最適です。
- シーン内の適切なオブジェクトをレンダリングします。
- テクスチャ ステージ 0 で次のテクスチャを設定します。
- レンダー状態を設定し、必要に応じてソース ブレンドとターゲット ブレンドを調整します。 システムが、これらのパラメーターに従って、レンダー ターゲット サーフェスで新しいテクスチャと既存のピクセルをブレンドします。
- 必要な数のテクスチャに対して手順 3、4、5 を繰り返します。
関連トピック