D3D12_BLEND_DESC 結構 (d3d12.h)

描述混合狀態。

語法

typedef struct D3D12_BLEND_DESC {
  BOOL                           AlphaToCoverageEnable;
  BOOL                           IndependentBlendEnable;
  D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8];
} D3D12_BLEND_DESC;

成員

AlphaToCoverageEnable

指定將圖元設定為轉譯目標時,是否要使用 Alpha 到涵蓋範圍做為多重取樣技術。 如需使用 Alpha 到涵蓋範圍的詳細資訊,請參閱 Alpha-To-Coverage

IndependentBlendEnable

指定是否要在同時轉譯目標中啟用獨立混合。 設定為 TRUE 以啟用獨立混合。 如果設定為 FALSE,則只會使用 RenderTarget[0] 成員; 會忽略 RenderTarget[1..7]。

如需限制 ,請參閱 一節。

RenderTarget[8]

描述轉譯目標混合狀態 的D3D12_RENDER_TARGET_BLEND_DESC 結構陣列;這些對應至一次可以系結至 輸出合併階段 的八個轉譯目標。

備註

D3D12_GRAPHICS_PIPELINE_STATE_DESC物件包含混合狀態結構,可控制輸出合併階段的混合。

以下是混合狀態的預設值。

狀態 預設值
AlphaToCoverageEnable FALSE
IndependentBlendEnable FALSE
RenderTarget[0]。BlendEnable FALSE
RenderTarget[0]。LogicOpEnable FALSE
RenderTarget[0]。SrcBlend D3D12_BLEND_ONE
RenderTarget[0]。DestBlend D3D12_BLEND_ZERO
RenderTarget[0]。BlendOp D3D12_BLEND_OP_ADD
RenderTarget[0]。SrcBlendAlpha D3D12_BLEND_ONE
RenderTarget[0]。DestBlendAlpha D3D12_BLEND_ZERO
RenderTarget[0]。BlendOpAlpha D3D12_BLEND_OP_ADD
RenderTarget[0]。LogicOp D3D12_LOGIC_OP_NOOP
RenderTarget[0]。RenderTargetWriteMask D3D12_COLOR_WRITE_ENABLE_ALL

當您將 RenderTarget 陣列第一個專案的LogicOpEnable成員設定為 TRUE (RenderTarget[0]) 時,您也必須將RenderTarget[0] 的BlendEnable成員設定為FALSE,並將這個結構的IndependentBlendEnable成員設定為FALSE 這反映硬體的限制,您無法將邏輯作業混合在多個轉譯目標之間,而且當您使用邏輯作業時,必須將相同的邏輯作業套用至所有轉譯目標。

請注意協助程式結構, CD3DX12_BLEND_DESC

需求

   
標頭 d3d12.h

另請參閱

核心結構