ID3D11Device1::CreateBlendState1 method

Creates a blend-state object that encapsulates blend state for the output-merger stage and allows the configuration of logic operations.


HRESULT CreateBlendState1(
  const D3D11_BLEND_DESC1 *pBlendStateDesc,
  ID3D11BlendState1       **ppBlendState



A pointer to a D3D11_BLEND_DESC1 structure that describes blend state.


Address of a pointer to the ID3D11BlendState1 interface for the blend-state object created.

Return Value

This method returns E_OUTOFMEMORY if there is insufficient memory to create the blend-state object.
See Direct3D 11 Return Codes for other possible return values.


The logical operations (those that enable bitwise logical operations between pixel shader output and render target contents, refer to D3D11_RENDER_TARGET_BLEND_DESC1 ) are only available on certain feature levels; call CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS set, to ensure support by checking the boolean field OutputMergerLogicOp of D3D11_FEATURE_DATA_D3D11_OPTIONS.

An app can create up to 4096 unique blend-state objects. For each object created, the runtime checks to see if a previous object has the same state. If such a previous object exists, the runtime will return a pointer to previous instance instead of creating a duplicate object.


Minimum supported client Windows 8 and Platform Update for Windows 7 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 and Platform Update for Windows Server 2008 R2 [desktop apps | UWP apps]
Target Platform Windows
Header d3d11_1.h
Library D3D11.lib

See Also