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

Weitere Informationen

Core-Strukturen