Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Legen Sie den Mischzustand der Ausgabe-Merger-Phase fest.
Syntax
void OMSetBlendState(
[in, optional] ID3D11BlendState *pBlendState,
[in, optional] const FLOAT [4] BlendFactor,
[in] UINT SampleMask
);
Parameter
[in, optional] pBlendState
Typ: ID3D11BlendState*
Zeiger auf eine Mischzustandsschnittstelle (siehe ID3D11BlendState). Übergeben Sie NULL für einen Standard-Mischzustand. Weitere Informationen zum Standard-Mischzustand finden Sie unter Hinweise.
[in, optional] BlendFactor
Typ: const FLOAT[4]
Array von Mischfaktoren, eins für jede RGBA-Komponente. Die Mischungsfaktoren modulieren Werte für den Pixel-Shader, das Renderziel oder beides. Wenn Sie das Blendzustandsobjekt mit D3D11_BLEND_BLEND_FACTOR oder D3D11_BLEND_INV_BLEND_FACTOR erstellt haben, verwendet die Mischphase das Nicht-NULL-Array von Mischfaktoren. Wenn Sie das Blendzustandsobjekt nicht mit D3D11_BLEND_BLEND_FACTOR oder D3D11_BLEND_INV_BLEND_FACTOR erstellt haben, verwendet die Mischphase nicht das Array von Mischfaktoren ohne NULL. die Runtime speichert die Mischfaktoren, und Sie können später ID3D11DeviceContext::OMGetBlendState aufrufen, um die Mischfaktoren abzurufen. Wenn Sie NULL übergeben, verwendet oder speichert die Runtime einen Mischfaktor von { 1, 1, 1, 1 }.
[in] SampleMask
Typ: UINT
32-Bit-Beispielabdeckung. Der Standardwert ist 0xffffffff. Siehe Bemerkungen.
Rückgabewert
Keine
Bemerkungen
Der Mischzustand wird von der Ausgabe-Fusionsstufe verwendet, um zu bestimmen, wie zwei RGB-Pixelwerte und zwei Alphawerte miteinander kombiniert werden. Die beiden RGB-Pixelwerte und zwei Alphawerte sind der RGB-Pixelwert und der Alphawert, den der Pixel-Shader ausgibt, sowie der RGB-Pixel- und Alphawert, der bereits im Ausgaberenderungsziel enthalten ist. Die Option blend steuert die Datenquelle, die die Blendingstufe verwendet, um Werte für den Pixel-Shader, das Renderziel oder beides zu modulieren. Der Mischvorgang steuert, wie die Mischphase diese modulierten Werte mathematisch kombiniert.
Um eine Blend-State-Schnittstelle zu erstellen, rufen Sie ID3D11Device::CreateBlendState auf.
Die Übergabe von NULL für die Blendzustandsschnittstelle gibt an, dass die Runtime einen Standard-Mischzustand festlegen soll. In der folgenden Tabelle sind die Standardmischungsparameter angegeben.
State | Standardwert |
---|---|
AlphaToCoverageEnable | FALSE |
IndependentBlendEnable | FALSE |
RenderTarget[0]. BlendEnable | 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]. RenderTargetWriteMask | D3D11_COLOR_WRITE_ENABLE_ALL |
Eine Beispielmaske bestimmt, welche Beispiele in allen aktiven Renderzielen aktualisiert werden. Die Zuordnung von Bits in einer Beispielmaske zu Beispielen in einem Multisampel-Renderziel liegt in der Verantwortung einer einzelnen Anwendung. Eine Beispielmaske wird immer angewendet. Sie ist unabhängig davon, ob Multisampling aktiviert ist, und hängt nicht davon ab, ob eine Anwendung Multisample-Renderziele verwendet.
Die -Methode enthält einen Verweis auf die übergebenen Schnittstellen. Dies unterscheidet sich vom Gerätestatusverhalten in Direct3D 10.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d11.h |
Bibliothek | D3D11.lib |