D3DBLEND 列挙
サポートされているブレンド モードを定義します。
構文
typedef enum D3DBLEND {
D3DBLEND_ZERO = 1,
D3DBLEND_ONE = 2,
D3DBLEND_SRCCOLOR = 3,
D3DBLEND_INVSRCCOLOR = 4,
D3DBLEND_SRCALPHA = 5,
D3DBLEND_INVSRCALPHA = 6,
D3DBLEND_DESTALPHA = 7,
D3DBLEND_INVDESTALPHA = 8,
D3DBLEND_DESTCOLOR = 9,
D3DBLEND_INVDESTCOLOR = 10,
D3DBLEND_SRCALPHASAT = 11,
D3DBLEND_BOTHSRCALPHA = 12,
D3DBLEND_BOTHINVSRCALPHA = 13,
D3DBLEND_BLENDFACTOR = 14,
D3DBLEND_INVBLENDFACTOR = 15,
D3DBLEND_SRCCOLOR2 = 16,
D3DBLEND_INVSRCCOLOR2 = 17,
D3DBLEND_FORCE_DWORD = 0x7fffffff
} D3DBLEND, *LPD3DBLEND;
定数
-
D3DBLEND_ZERO
-
ブレンド係数は (0, 0, 0, 0) です。
-
D3DBLEND_ONE
-
ブレンド係数は (1, 1, 1, 1) です。
-
D3DBLEND_SRCCOLOR
-
ブレンド係数は (Rs、Gs、Bs、As) です。
-
D3DBLEND_INVSRCCOLOR
-
ブレンド係数は (1 - Rs、1 - Gs、1 - Bs、1 - As) です。
-
D3DBLEND_SRCALPHA
-
ブレンド係数は (As、As、As、As) です。
-
D3DBLEND_INVSRCALPHA
-
ブレンド係数は ( 1 - As、1 - As、1 - As、1 - As) です。
-
D3DBLEND_DESTALPHA
-
ブレンド係数は (Ad Ad Ad Ad) である。
-
D3DBLEND_INVDESTALPHA
-
ブレンド係数は (1 - Ad 1 - Ad 1 - Ad 1 - Ad) です。
-
D3DBLEND_DESTCOLOR
-
ブレンド係数は(Rd、Gd、Bd、Ad)である。
-
D3DBLEND_INVDESTCOLOR
-
ブレンド係数は (1 -R d、 1 - Gd、1 - Bd、1 - Ad) です。
-
D3DBLEND_SRCALPHASAT
-
ブレンド係数は (f, f, f, 1);ここで f = min(As, 1 - Ad)。
-
D3DBLEND_BOTHSRCALPHA
-
互換性のために残されています。 DirectX 6 以降では、ソースと宛先のブレンド係数を個別の呼び出しでD3DBLEND_SRCALPHAとD3DBLEND_INVSRCALPHAに設定することで、同じ効果を実現できます。
-
D3DBLEND_BOTHINVSRCALPHA
-
互換性のために残されています。 ソース ブレンド係数は (1 - As、1 - As、1 - As、1 - As)、宛先ブレンド係数は (As、As、As、As) です。ターゲット ブレンドの選択がオーバーライドされます。 このブレンド モードは、D3DRS_SRCBLENDレンダリング状態でのみサポートされます。
-
D3DBLEND_BLENDFACTOR
-
フレーム バッファー ブレンダーで使用される一定の色ブレンド係数。 このブレンド モードは、D3DCAPS9 の SrcBlendCaps メンバーまたは DestBlendCaps メンバーでD3DPBLENDCAPS_BLENDFACTORが設定されている場合にのみサポートされます。
-
D3DBLEND_INVBLENDFACTOR
-
フレーム バッファー ブレンダーで使用される反転定数カラー ブレンド係数。 このブレンド モードは、D3DCAPS9 の SrcBlendCaps メンバーまたは DestBlendCaps メンバーでD3DPBLENDCAPS_BLENDFACTOR ビットが設定されている場合にのみサポートされます。
-
D3DBLEND_SRCCOLOR2
-
ブレンド係数は (PSOutColor[1]r, PSOutColor[1]g, PSOutColor[1]b, not used) です。 「 レンダー ターゲット ブレンド」を参照してください。
Direct3D 9 と Direct3D 9Ex の違い:
- このフラグは Direct3D 9Ex でのみ使用できます。
-
D3DBLEND_INVSRCCOLOR2
-
ブレンド係数は (1 - PSOutColor[1]r, 1 - PSOutColor[1]g, 1 - PSOutColor[1]b, not used)) です。 「 レンダー ターゲット ブレンド」を参照してください。
Direct3D 9 と Direct3D 9Ex の違い:
- このフラグは Direct3D 9Ex でのみ使用できます。
-
D3DBLEND_FORCE_DWORD
-
この列挙を強制的に 32 ビットのサイズにコンパイルします。 この値がないと、一部のコンパイラでは、この列挙を 32 ビット以外のサイズにコンパイルできます。 この値は使用されません。
解説
前のメンバーの説明では、ソースと宛先の RGBA 値は、s および d の添字で示されています。
この列挙型の値は、次のレンダリング状態で使用されます。
- D3DRS_DESTBLEND
- D3DRS_SRCBLEND
- D3DRS_DESTBLENDALPHA
- D3DRS_SRCBLENDALPHA
レンダー ターゲット ブレンド
Direct3D 9Ex では、テキストレンダリング機能が改善されました。 通常、クリアタイプのフォントをレンダリングするには、2 つのパスが必要です。 2 番目のパスを排除するために、ピクセル シェーダーを使用して 2 つの色を出力できます。これは PSOutColor[0] と PSOutColor[1] を呼び出すことができます。 最初の色には、標準の 3 色コンポーネント (RGB) が含まれます。 2 番目の色には、3 つのアルファ コンポーネント (最初の色のコンポーネントごとに 1 つ) が含まれます。
これらの新しいブレンド モードは、最初のレンダー ターゲットでのテキスト レンダリングにのみ使用されます。
要件
要件 | 値 |
---|---|
ヘッダー |
|
関連項目