CD3D11_BLEND_DESC1 structure

Note  This structure is supported by the Direct3D 11.1 runtime, which is available on Windows 8 and later operating systems.
 
Describes the blend state that you use in a call to ID3D11Device1::CreateBlendState1 to create a blend-state object.

Syntax

struct CD3D11_BLEND_DESC1 {
  void CD3D11_BLEND_DESC1();
  void CD3D11_BLEND_DESC1( const D3D11_BLEND_DESC1 & o);
  void CD3D11_BLEND_DESC1( CD3D11_DEFAULT );
  void ~CD3D11_BLEND_DESC1();
  void operator const D3D11_BLEND_DESC1&();
};

Members

        ````cpp

void CD3D11_BLEND_DESC1()`

        ````cpp

void CD3D11_BLEND_DESC1( const D3D11_BLEND_DESC1 & o)`

        ````cpp

void CD3D11_BLEND_DESC1( CD3D11_DEFAULT )`

        ````cpp

void ~CD3D11_BLEND_DESC1()`

        ````cpp

void operator const D3D11_BLEND_DESC1&()`

## Remarks
    Here are the default values for blend state.
    
State Default Value
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
 

If the driver type is set to D3D_DRIVER_TYPE_HARDWARE, the feature level is set to less than or equal to D3D_FEATURE_LEVEL_9_3, and the pixel format of the render target is set to DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB, or DXGI_FORMAT_B8G8R8X8_UNORM_SRGB, the display device performs the blend in standard RGB (sRGB) space and not in linear space. However, if the feature level is set to greater than D3D_FEATURE_LEVEL_9_3, the display device performs the blend in linear space, which is ideal.

When you set the LogicOpEnable member of the first element of the RenderTarget array (RenderTarget[0]) to TRUE, you must also set the BlendEnable member of RenderTarget[0] to FALSE, and the IndependentBlendEnable member of this D3D11_BLEND_DESC1 to FALSE. This reflects the limitation in hardware that you can't mix logic operations with blending across multiple render targets, and that when you use a logic operation, you must apply the same logic operation to all render targets.

Requirements

   
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]
Header d3d11_1.h
## See Also

    <a href="https://docs.microsoft.com/windows/desktop/direct3d11/d3d11-graphics-reference-d3d11-core-structures">Core Structures</a>

D3D11_RENDER_TARGET_BLEND_DESC1

ID3D11BlendState1::GetDesc1