次の方法で共有


ID3D10Device::OMSetBlendState メソッド (d3d10.h)

出力合併ステージの ブレンド状態 を設定します。

構文

void OMSetBlendState(
  [in] ID3D10BlendState *pBlendState,
  [in] const FLOAT [4]  BlendFactor,
  [in] UINT             SampleMask
);

パラメーター

[in] pBlendState

種類: ID3D10BlendState*

ブレンド状態インターフェイスへのポインター ( 「ID3D10BlendState」を参照)。 NULL を渡すと、既定のブレンド状態が意味されます。 詳細については、「解説」を参照してください。

[in] BlendFactor

型: const FLOAT

ブレンド 係数の配列。RGBA コンポーネントごとに 1 つ。 ブレンド 係数は、ピクセル シェーダー、レンダー ターゲット、またはその両方の値を調整します。 D3D10_BLEND_BLEND_FACTORまたはD3D10_BLEND_INV_BLEND_FACTORを使用してブレンド状態オブジェクトを作成した場合、ブレンド ステージではブレンド 係数の NULL 以外の配列が使用されます。 D3D10_BLEND_BLEND_FACTORまたはD3D10_BLEND_INV_BLEND_FACTORを使用してブレンド状態オブジェクトを作成しなかった場合、ブレンド ステージではブレンド 係数の NULL 以外の配列は使用されません。ランタイムにはブレンド 係数が格納され、後で ID3D11DeviceContext::OMGetBlendState を呼び出してブレンド 係数を取得できます。 NULL を渡すと、ランタイムは{ 1, 1, 1, 1, 1 } と等しいブレンド係数を使用または格納します。

[in] SampleMask

型: UINT

32 ビットのサンプル カバレッジ。 既定値は0xffffffffです。 「解説」を参照してください。

戻り値

なし

解説

ブレンド状態は 、出力合併ステージ によって使用され、2 つの RGB ピクセル値と 2 つのアルファ値をブレンドする方法を決定します。 2 つの RGB ピクセル値と 2 つのアルファ値は、ピクセル シェーダーが出力する RGB ピクセル値とアルファ値、および出力レンダー ターゲットに既に含まれている RGB ピクセル値とアルファ値です。 ブレンド オプションは、ブレンド ステージがピクセル シェーダー、レンダー ターゲット、またはその両方の値を調整するために使用するデータ ソースを制御します。 ブレンド操作は、ブレンド ステージでこれらの変調値を数学的に結合する方法を制御します。

ブレンド状態インターフェイスを作成するには、 ID3D10Device::CreateBlendState を呼び出します。

ブレンド状態インターフェイスに NULL を 渡すと、既定のブレンド状態を設定するためにランタイムに示されます。 次の表は、既定のブレンド パラメーターを示しています。

State Default value
AlphaToCoverageEnable FALSE
BlendEnable FALSE[8]
SrcBlend D3D10_BLEND_ONE
DstBlend D3D10_BLEND_ZERO
BlendOp D3D10_BLEND_OP_ADD
SrcBlendAlpha D3D10_BLEND_ONE
DstBlendAlpha D3D10_BLEND_ZERO
BlendOpAlpha D3D10_BLEND_OP_ADD
RenderTargetWriteMask[8] D3D10_COLOR_WRITE_ENABLE_ALL[8]
 

サンプル マスクは、アクティブなすべてのレンダー ターゲットで更新されるサンプルを決定します。 サンプル マスク内のビットとマルチサンプル レンダー ターゲットのサンプルのマッピングは、個々のアプリケーションの責任です。 サンプル マスクは常に適用されます。これは、マルチサンプリングが有効かどうかに関係なく、アプリケーションがマルチサンプル レンダー ターゲットを使用するかどうかに依存しません。

メソッドは、渡されたインターフェイスへの参照を保持しません。 そのため、アプリケーションは、デバイスで現在使用されているインターフェイスを解放しないように注意する必要があります。

必要条件

   
対象プラットフォーム Windows
ヘッダー d3d10.h
Library D3D10.lib

関連項目

ID3D10Device インターフェイス