D3DTEXTUREOP 列挙
ステージごとのテクスチャ ブレンド操作を定義します。
構文
typedef enum D3DTEXTUREOP {
D3DTOP_DISABLE = 1,
D3DTOP_SELECTARG1 = 2,
D3DTOP_SELECTARG2 = 3,
D3DTOP_MODULATE = 4,
D3DTOP_MODULATE2X = 5,
D3DTOP_MODULATE4X = 6,
D3DTOP_ADD = 7,
D3DTOP_ADDSIGNED = 8,
D3DTOP_ADDSIGNED2X = 9,
D3DTOP_SUBTRACT = 10,
D3DTOP_ADDSMOOTH = 11,
D3DTOP_BLENDDIFFUSEALPHA = 12,
D3DTOP_BLENDTEXTUREALPHA = 13,
D3DTOP_BLENDFACTORALPHA = 14,
D3DTOP_BLENDTEXTUREALPHAPM = 15,
D3DTOP_BLENDCURRENTALPHA = 16,
D3DTOP_PREMODULATE = 17,
D3DTOP_MODULATEALPHA_ADDCOLOR = 18,
D3DTOP_MODULATECOLOR_ADDALPHA = 19,
D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20,
D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21,
D3DTOP_BUMPENVMAP = 22,
D3DTOP_BUMPENVMAPLUMINANCE = 23,
D3DTOP_DOTPRODUCT3 = 24,
D3DTOP_MULTIPLYADD = 25,
D3DTOP_LERP = 26,
D3DTOP_FORCE_DWORD = 0x7fffffff
} D3DTEXTUREOP, *LPD3DTEXTUREOP;
定数
-
D3DTOP_DISABLE
-
このテクスチャ ステージと、インデックスが大きいすべてのステージからの出力を無効にします。 テクスチャ マッピングを無効にするには、これを最初のテクスチャ ステージ (ステージ 0) の色操作として設定します。 カラー操作が有効になっている場合、アルファ操作を無効にすることはできません。 カラー ブレンドが有効になっている場合にアルファ操作を D3DTOP_DISABLE に設定すると、未定義の動作が発生します。
-
D3DTOP_SELECTARG1
-
このテクスチャ ステージの最初の色またはアルファ引数 (変更なし) を出力として使用します。 この操作は、D3DTSS_COLOROPテクスチャ ステージ状態で使用する場合は color 引数、D3DTSS_ALPHAOPで使用する場合は alpha 引数に影響します。
-
D3DTOP_SELECTARG2
-
このテクスチャ ステージの 2 番目の色またはアルファ引数 (変更なし) を出力として使用します。 この操作は、D3DTSS_COLOROP テクスチャ ステージの状態で使用する場合は color 引数、D3DTSS_ALPHAOPで使用する場合は alpha 引数に影響します。
-
D3DTOP_MODULATE
-
引数のコンポーネントを乗算します。
-
D3DTOP_MODULATE2X
-
引数のコンポーネントを乗算し、明るくするために積を左の 1 ビット (実質的に 2 を乗算) にシフトします。
-
D3DTOP_MODULATE4X
-
引数のコンポーネントを乗算し、積を左の 2 ビット (実質的に 4 で乗算) にシフトして明るくします。
-
D3DTOP_ADD
-
引数のコンポーネントを追加します。
-
D3DTOP_ADDSIGNED
-
- 0.5 バイアスを持つ引数のコンポーネントを追加し、- 0.5 から 0.5 までの有効範囲の値を作成します。
-
D3DTOP_ADDSIGNED2X
-
- 0.5 バイアスを持つ引数のコンポーネントを追加し、積を左の 1 ビットにシフトします。
-
D3DTOP_SUBTRACT
-
最初の引数のコンポーネントから 2 番目の引数のコンポーネントを減算します。
-
D3DTOP_ADDSMOOTH
-
1 番目と 2 番目の引数を追加します。その後、合計から製品を減算します。
-
D3DTOP_BLENDDIFFUSEALPHA
-
各頂点から補間されたアルファを使用して、このテクスチャ ステージを直線的にブレンドします。
-
D3DTOP_BLENDTEXTUREALPHA
-
このステージのテクスチャのアルファを使用して、このテクスチャ ステージを直線的にブレンドします。
-
D3DTOP_BLENDFACTORALPHA
-
スカラー アルファ セットとD3DRS_TEXTUREFACTORレンダリング状態を使用して、このテクスチャ ステージを直線的にブレンドします。
-
D3DTOP_BLENDTEXTUREALPHAPM
-
事前乗算アルファを使用するテクスチャ ステージを直線的にブレンドします。
-
D3DTOP_BLENDCURRENTALPHA
-
前のテクスチャ ステージから取得したアルファを使用して、このテクスチャ ステージを直線的にブレンドします。
-
D3DTOP_PREMODULATE
-
D3DTOP_PREMODULATEはステージ n で設定されます。 ステージ n の出力は arg1 です。 さらに、ステージ n + 1 にテクスチャがある場合、ステージ n + 1 の任意のD3DTA_CURRENTは、ステージ n + 1 のテクスチャによって事前に乗算されます。
-
D3DTOP_MODULATEALPHA_ADDCOLOR
-
最初の引数のアルファを使用して、2 番目の引数の色を調整します。引数 1 に結果を追加します。 この操作は、カラー操作 (D3DTSS_COLOROP) でのみサポートされます。
-
D3DTOP_MODULATECOLOR_ADDALPHA
-
引数を調整します。次に、最初の引数のアルファを追加します。 この操作は、カラー操作 (D3DTSS_COLOROP) でのみサポートされます。
-
D3DTOP_MODULATEINVALPHA_ADDCOLOR
-
D3DTOP_MODULATEALPHA_ADDCOLORに似ていますが、最初の引数のアルファの逆関数を使用します。 この操作は、カラー操作 (D3DTSS_COLOROP) でのみサポートされます。
-
D3DTOP_MODULATEINVCOLOR_ADDALPHA
-
D3DTOP_MODULATECOLOR_ADDALPHAと同様ですが、最初の引数の色の逆関数を使用します。 この操作は、カラー操作 (D3DTSS_COLOROP) でのみサポートされます。
-
D3DTOP_BUMPENVMAP
-
輝度を使用せずに、次のテクスチャ ステージで環境マップを使用して、ピクセル単位のバンプ マッピングを実行します。 この操作は、カラー操作 (D3DTSS_COLOROP) でのみサポートされます。
-
D3DTOP_BUMPENVMAPLUMINANCE
-
次のテクスチャ ステージで環境マップを使用し、輝度を使用してピクセル単位のバンプ マッピングを実行します。 この操作は、カラー操作 (D3DTSS_COLOROP) でのみサポートされます。
-
D3DTOP_DOTPRODUCT3
-
各引数のコンポーネントを符号付きコンポーネントとしてモジュレートし、その製品を追加します。次に、アルファを含むすべてのカラー チャネルに合計をレプリケートします。 この操作は、色とアルファの操作でサポートされています。
DirectX 6 および DirectX 7 では、符号付きデータをシミュレートするために使用する前に、上記の入力のマルチテキスト操作がすべて半分 (y = x - 0.5) シフトダウンされ、スカラー結果は正の値に自動的にクランプされ、3 つの出力チャネルすべてにレプリケートされます。 また、カラー操作ではアルファが更新されず、RGB コンポーネントが更新されるだけであることに注意してください。
ただし、DirectX 8.1 シェーダーでは、出力を .rgb または .a コンポーネントまたは両方 (既定値) にルーティングするように指定できます。 アルファ チャネルで別のスカラー演算を指定することもできます。
-
D3DTOP_MULTIPLYADD
-
乗算演算を実行します。 最後の 2 つの引数を受け取り、それらを乗算して、残りの入力/ソース引数に加算し、それを結果に配置します。
SRGBA = Arg1 + Arg2 * Arg3
-
D3DTOP_LERP
-
2 番目と 3 番目のソース引数の間を、最初のソース引数で指定された比率で線形補間します。
SRGBA = (Arg1) * Arg2 + (1- Arg1) * Arg3。
-
D3DTOP_FORCE_DWORD
-
この列挙を強制的に 32 ビットのサイズにコンパイルします。 この値がないと、一部のコンパイラでは、この列挙を 32 ビット以外のサイズにコンパイルできます。 この値は使用されません。
解説
この型のメンバーは、 IDirect3DDevice9::SetTextureStageState メソッドでD3DTSS_COLOROP値またはD3DTSS_ALPHAOP値を使用して色またはアルファの操作を設定するときに使用されます。
上記の数式では、SRGBA はテクスチャ操作によって生成される RGBA 色であり、Arg1、Arg2、Arg3 はテクスチャ引数の完全な RGBA 色を表します。 引数の個々のコンポーネントは、添字付きで表示されます。 たとえば、引数 1 のアルファ コンポーネントは Arg1A として表示されます。
必要条件
要件 | 値 |
---|---|
ヘッダー |
|
関連項目