Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

D3D11_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


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

Members

AlphaToCoverageEnable

Type: BOOL

Specifies whether to use alpha-to-coverage as a multisampling technique when setting a pixel to a render target. For more info about using alpha-to-coverage, see Alpha-To-Coverage.

IndependentBlendEnable

Type: BOOL

Specifies whether to enable independent blending in simultaneous render targets. Set to TRUE to enable independent blending. If set to FALSE, only the RenderTarget[0] members are used; RenderTarget[1..7] are ignored.

RenderTarget

Type: D3D11_RENDER_TARGET_BLEND_DESC1[8]

An array of D3D11_RENDER_TARGET_BLEND_DESC1 structures that describe the blend states for render targets; these correspond to the eight render targets that can be bound to the output-merger stage at one time.

Remarks

Here are the default values for blend state.

StateDefault Value
AlphaToCoverageEnableFALSE
IndependentBlendEnableFALSE
RenderTarget[0].BlendEnableFALSE
RenderTarget[0].LogicOpEnableFALSE
RenderTarget[0].SrcBlendD3D11_BLEND_ONE
RenderTarget[0].DestBlendD3D11_BLEND_ZERO
RenderTarget[0].BlendOpD3D11_BLEND_OP_ADD
RenderTarget[0].SrcBlendAlphaD3D11_BLEND_ONE
RenderTarget[0].DestBlendAlphaD3D11_BLEND_ZERO
RenderTarget[0].BlendOpAlphaD3D11_BLEND_OP_ADD
RenderTarget[0].LogicOpD3D11_LOGIC_OP_NOOP
RenderTarget[0].RenderTargetWriteMaskD3D11_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 | Windows Store apps]

Minimum supported server

Windows Server 2012 and Platform Update for Windows Server 2008 R2 [desktop apps | Windows Store apps]

Header

D3D11_1.h

See also

Core Structures
ID3D11BlendState1::GetDesc1
D3D11_RENDER_TARGET_BLEND_DESC1

 

 

Show:
© 2017 Microsoft