D3D12_BLEND_DESC-Struktur (d3d12.h)
Beschreibt den Mischzustand.
Syntax
typedef struct D3D12_BLEND_DESC {
BOOL AlphaToCoverageEnable;
BOOL IndependentBlendEnable;
D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8];
} D3D12_BLEND_DESC;
Member
AlphaToCoverageEnable
Gibt an, ob alpha-to-coverage als Multisampling-Technik verwendet werden soll, wenn ein Pixel auf ein Renderziel festgelegt wird. Weitere Informationen zur Verwendung von Alpha-to-Coverage finden Sie unter Alpha-To-Coverage.
IndependentBlendEnable
Gibt an, ob eine unabhängige Mischung in gleichzeitigen Renderzielen aktiviert werden soll. Legen Sie diese Einstellung auf TRUE fest, um eine unabhängige Mischung zu ermöglichen. Wenn dieser Wert auf FALSE festgelegt ist, werden nur die RenderTarget[0]-Member verwendet. RenderTarget[1..7] wird ignoriert.
Einschränkungen finden Sie im Abschnitt Hinweise .
RenderTarget[8]
Ein Array von D3D12_RENDER_TARGET_BLEND_DESC Strukturen, die die Mischzustände für Renderziele beschreiben; diese entsprechen den acht Renderzielen, die gleichzeitig an die Output-Merger-Phase gebunden werden können.
Hinweise
Ein D3D12_GRAPHICS_PIPELINE_STATE_DESC-Objekt enthält eine Mischzustandsstruktur, die das Mischen durch die Ausgabe-Merger-Phase steuert.
Im Folgenden finden Sie die Standardwerte für den Mischzustand.
State | Standardwert |
---|---|
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 |
Wenn Sie den LogicOpEnable-Member des ersten Elements des RenderTarget-Arrays (RenderTarget[0]) auf TRUE festlegen, müssen Sie auch den BlendEnable-Member von RenderTarget[0] auf FALSE und das IndependentBlendEnable-Element dieser Struktur auf FALSE festlegen. Dies spiegelt die Einschränkung der Hardware wider, dass Sie logikbasierte Vorgänge nicht mit der Überblendung über mehrere Renderziele hinweg kombinieren können, und dass Sie bei Verwendung eines Logikvorgangs denselben Logikvorgang auf alle Renderziele anwenden müssen.
Beachten Sie die Hilfsstruktur , CD3DX12_BLEND_DESC.
Anforderungen
Anforderung | Wert |
---|---|
Header | d3d12.h |