D3D11_BLEND_DESC1 Struktur (d3d11_1.h)

Beschreibt den Mischzustand, den Sie in einem Aufruf von D3D11Device1::CreateBlendState1 verwenden, um ein Blend-State-Objekt zu erstellen.

Hinweis

Diese Struktur wird von der Direct3D 11.1-Runtime unterstützt, die unter Windows 8 und höheren Betriebssystemen verfügbar ist.

Syntax

typedef struct D3D11_BLEND_DESC1 {
  BOOL                            AlphaToCoverageEnable;
  BOOL                            IndependentBlendEnable;
  D3D11_RENDER_TARGET_BLEND_DESC1 RenderTarget[8];
} D3D11_BLEND_DESC1;

Member

AlphaToCoverageEnable

Typ: BOOL

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

Typ: BOOL

Gibt an, ob die unabhängige Mischung in gleichzeitigen Renderzielen aktiviert werden soll. Legen Sie auf TRUE fest, um die unabhängige Mischung zu ermöglichen. Wenn auf FALSE festgelegt ist, werden nur die RenderTarget[0]-Member verwendet. RenderTarget[1..7] werden ignoriert.

Einschränkungen finden Sie im Abschnitt Hinweise .

RenderTarget[8]

Typ: D3D11_RENDER_TARGET_BLEND_DESC1[8]

Ein Array von D3D11_RENDER_TARGET_BLEND_DESC1 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

Hier sind die Standardwerte für den Mischzustand.

State Standardwert
AlphaToCoverageEnable FALSE
IndependentBlendEnable FALSE
RenderTarget[0]. BlendEnable FALSE
RenderTarget[0]. LogicOpEnable FALSE
RenderTarget[0]. SrcBlend D3D11_BLEND_ONE
RenderTarget[0]. DestBlend D3D11_BLEND_ZERO
RenderTarget[0]. BlendOp D3D11_BLEND_OP_ADD
RenderTarget[0]. SrcBlendAlpha D3D11_BLEND_ONE
RenderTarget[0]. DestBlendAlpha D3D11_BLEND_ZERO
RenderTarget[0]. BlendOpAlpha D3D11_BLEND_OP_ADD
RenderTarget[0]. LogicOp D3D11_LOGIC_OP_NOOP
RenderTarget[0]. RenderTargetWriteMask D3D11_COLOR_WRITE_ENABLE_ALL

Wenn der Treibertyp auf D3D_DRIVER_TYPE_HARDWARE festgelegt ist, wird die Featureebene auf kleiner oder gleich D3D_FEATURE_LEVEL_9_3 festgelegt, und das Pixelformat des Renderziels ist auf DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB oder DXGI_FORMAT_B8G8R8X8_UNORM_SRGB festgelegt, führt das Anzeigegerät die Mischung im Standard-RGB-Raum (sRGB) und nicht im linearen Raum durch. Wenn die Featureebene jedoch auf größer als D3D_FEATURE_LEVEL_9_3 festgelegt ist, führt das Anzeigegerät die Mischung im linearen Raum aus, was ideal ist.

Wenn Sie das LogicOpEnable-Element des ersten Elements des RenderTarget-Arrays (RenderTarget[0]) auf TRUE festlegen, müssen Sie auch das BlendEnable-Element von RenderTarget[0] auf FALSE und das IndependentBlendEnable-Element dieser D3D11_BLEND_DESC1 auf FALSE festlegen. Dies spiegelt die Einschränkung bei der Hardware wider, dass Sie logikbasierte Vorgänge nicht mit der Überblendung über mehrere Renderziele kombinieren können, und dass Sie bei Verwendung eines Logikvorgangs denselben Logikvorgang auf alle Renderziele anwenden müssen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 und Plattformupdate für Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Kopfzeile d3d11_1.h

Weitere Informationen

Kernstrukturen

D3D11_RENDER_TARGET_BLEND_DESC1

ID3D11BlendState1::GetDesc1