次の方法で共有


テクスチャ ブレンディング処理と引数

テクスチャ ブレンディング処理と引数

アプリケーションは、ブレンディング ステージをカレント テクスチャ セットの各テクスチャに関連付ける。Microsoft® Direct3D® は、各ブレンディング ステージをセット内の最初のテクスチャから 8 番目のテクスチャまで順番に評価する。

Direct3D では、カレント テクスチャ セットの各テクスチャの情報を、関連付けられているブレンディング ステージに適用する。アプリケーションは、IDirect3DDevice9::SetTextureStageState を呼び出して、テクスチャ ステージからどの情報を使うかを制御する。カラー チャンネルとアルファ チャンネルの処理は、個別に設定することができる。各処理では 2 つの引数を使う。カラー チャンネル処理を指定するには、D3DTSS_COLOROP ステージ ステートを使い、アルファ処理を指定するには、D3DTSS_ALPHAOP ステージ ステートを使う。これらのステージ ステートは共に D3DTEXTUREOP 列挙型からの値を使う。

テクスチャ ブレンディング引数には、D3DTEXTURESTAGESTATETYPE 列挙型の D3DTSS_COLORARG1、D3DTSS_COLORARG2、D3DTSS_ALPHARG1、D3DTSS_ALPHARG2 メンバを使う。対応する引数は、D3DTAを使って識別する。

  あるテクスチャ ステージのカラー処理を D3DTOP_DISABLE に設定することで、そのテクスチャ ステージと、それに続くカスケード内のテクスチャ ブレンディング ステージを無効にすることができる。カラー処理を無効すると、アルファ処理も同様に無効になる。カラー処理が有効になっているときは、アルファ処理を無効にすることはできない。カラー ブレンディングが有効な場合、アルファ処理を D3DTOP_DISABLE に設定すると、不定の動作が生じる。

デバイスでサポートされているテクスチャ ブレンディング処理を調べるには、D3DCAPS9 構造体の TextureCaps メンバに問い合わせる。