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 |