> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# D3D12_BLEND_DESC

> 블렌드 상태를 설명합니다. (D3D12_BLEND_DESC)

블렌드 상태를 설명합니다.

## 구문

```cpp theme={null}
typedef struct D3D12_BLEND_DESC
{
    BOOL AlphaToCoverageEnable;
    BOOL IndependentBlendEnable;
    D3D12_RENDER_TARGET_BLEND_DESC RenderTarget;
} D3D12_BLEND_DESC
```

### 멤버

*AlphaToCoverageEnable*\
형식: BOOL

렌더 대상에 픽셀을 설정할 때 알파-투-커버리지를 멀티샘플링 기법으로 사용할지 여부를 지정합니다. 알파-투-커버리지 사용에 대한 자세한 내용은 [알파-투-커버리지](https://learn.microsoft.com/en-us/windows/desktop/direct3d11/d3d10-graphics-programming-guide-blend-state)를 참조하세요.

*IndependentBlendEnable*\
형식: BOOL

동시 렌더 대상에서 독립 블렌딩을 활성화할지 여부를 지정합니다. 독립 블렌딩을 활성화하려면 **TRUE**로 설정합니다. **FALSE**로 설정하면 **RenderTarget**\[0] 멤버만 사용되며, **RenderTarget**\[1..7]은 무시됩니다.

제한 사항은 **설명** 섹션을 참조하세요.

*RenderTarget*\
형식: D3D12\_RENDER\_TARGET\_BLEND\_DESC\[8]

렌더 대상에 대한 블렌드 상태를 설명하는 [D3D12\_RENDER\_TARGET\_BLEND\_DESC](/reference/graphics/d3d12/structs/d3d12_render_target_blend_desc_public) 구조체의 배열입니다. 이는 한 번에 [output-merger 단계](https://learn.microsoft.com/en-us/windows/desktop/direct3d11/d3d10-graphics-programming-guide-output-merger-stage)에 바인딩될 수 있는 8개의 렌더 대상에 해당합니다.

## 설명

[D3D12\_GRAPHICS\_PIPELINE\_STATE\_DESC](/reference/graphics/d3d12_x/structs/d3d12_graphics_pipeline_state_desc) 객체에는 output-merger 단계에서 블렌딩을 제어하는 블렌드 상태 구조가 포함되어 있습니다.

블렌드 상태의 기본값은 다음과 같습니다.

<table>
  <tr>
    <th>상태</th>
    <th>기본값</th>
  </tr>

  <tr>
    <td>AlphaToCoverageEnable</td>
    <td>**FALSE**</td>
  </tr>

  <tr>
    <td>IndependentBlendEnable</td>
    <td>**FALSE**</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].BlendEnable</td>
    <td>**FALSE**</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].LogicOpEnable</td>
    <td>**FALSE**</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].SrcBlend</td>
    <td>D3D12\_BLEND\_ONE</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].DestBlend</td>
    <td>D3D12\_BLEND\_ZERO</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].BlendOp</td>
    <td>D3D12\_BLEND\_OP\_ADD</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].SrcBlendAlpha</td>
    <td>D3D12\_BLEND\_ONE</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].DestBlendAlpha</td>
    <td>D3D12\_BLEND\_ZERO</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].BlendOpAlpha</td>
    <td>D3D12\_BLEND\_OP\_ADD</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].LogicOp</td>
    <td>D3D12\_LOGIC\_OP\_NOOP</td>
  </tr>

  <tr>
    <td>RenderTarget\[0].RenderTargetWriteMask</td>
    <td>D3D12\_COLOR\_WRITE\_ENABLE\_ALL</td>
  </tr>
</table>

**RenderTarget** 배열의 첫 번째 요소(**RenderTarget**\[0])의 **LogicOpEnable** 멤버를 **TRUE**로 설정하는 경우, **RenderTarget**\[0]의 **BlendEnable** 멤버도 **FALSE**로 설정해야 하며, 이 구조체의 **IndependentBlendEnable** 멤버도 **FALSE**로 설정해야 합니다. 이는 여러 렌더 대상에서 블렌딩과 논리 연산을 혼합할 수 없으며, 논리 연산을 사용할 때는 모든 렌더 대상에 동일한 논리 연산을 적용해야 한다는 하드웨어 제한을 반영한 것입니다.

도우미 구조체 [CD3DX12\_BLEND\_DESC](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/cd3dx12-blend-desc)를 참고하세요.

## 요구 사항

**헤더:** d3d12\_xs.h 또는 d3d12\_x.h\
**라이브러리:** d3d12\_xs.lib 또는 d3d12\_x.lib\
**지원 플랫폼**: XBOX Series 콘솔 및 XBOX One 제품군

## 함께 보기

[핵심 구조체](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/direct3d-12-structures)


## Related topics

- [D3D12_RENDER_TARGET_BLEND_DESC](/ko/reference/graphics/d3d12/structs/d3d12_render_target_blend_desc_public.md)
- [D3D12_BLEND](/ko/reference/graphics/d3d12/enums/d3d12_blend_public.md)
- [D3D12_BLEND_OP](/ko/reference/graphics/d3d12/enums/d3d12_blend_op_public.md)
- [D3D12_LOGIC_OP](/ko/reference/graphics/d3d12/enums/d3d12_logic_op_public.md)
- [D3D12_COLOR_WRITE_ENABLE](/ko/reference/graphics/d3d12/enums/d3d12_color_write_enable_public.md)
