> ## 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_DEPTH_STENCIL_DESC1

> 深度ステンシル状態を記述します。(D3D12_DEPTH_STENCIL_DESC1)

深度ステンシル状態を記述します。

## 構文

```cpp theme={null}
typedef struct D3D12_DEPTH_STENCIL_DESC1
{
    BOOL DepthEnable;
    D3D12_DEPTH_WRITE_MASK DepthWriteMask;
    D3D12_COMPARISON_FUNC DepthFunc;
    BOOL StencilEnable;
    UINT8 StencilReadMask;
    UINT8 StencilWriteMask;
    D3D12_DEPTH_STENCILOP_DESC FrontFace;
    D3D12_DEPTH_STENCILOP_DESC BackFace;
    BOOL DepthBoundsTestEnable;
} D3D12_DEPTH_STENCIL_DESC1
```

### メンバー

*DepthEnable*\
型: BOOL

深度テストを有効にするかどうかを指定します。深度テストを有効にするには、このメンバーを **TRUE** に設定します。

*DepthWriteMask*\
型: D3D12\_DEPTH\_WRITE\_MASK

深度データによって変更できる深度ステンシル バッファーの一部を識別する [D3D12\_DEPTH\_WRITE\_MASK](/reference/graphics/d3d12/enums/d3d12_depth_write_mask_public) 型の値。

*DepthFunc*\
型: D3D12\_COMPARISON\_FUNC

既存の深度データに対して深度データを比較する関数を識別する [D3D12\_COMPARISON\_FUNC](/reference/graphics/d3d12/enums/d3d12_comparison_func_public) 型の値。

*StencilEnable*\
型: BOOL

ステンシル テストを有効にするかどうかを指定します。ステンシル テストを有効にするには、このメンバーを **TRUE** に設定します。

*StencilReadMask*\
型: UINT8

ステンシル データを読み取るために、深度ステンシル バッファーの一部を識別します。

*StencilWriteMask*\
型: UINT8

ステンシル データを書き込むために、深度ステンシル バッファーの一部を識別します。

*FrontFace*\
型: D3D12\_DEPTH\_STENCILOP\_DESC

表面法線がカメラの方向を向いているピクセルに対して、深度テストとステンシル テストの結果をどのように使用するかを記述する [D3D12\_DEPTH\_STENCILOP\_DESC](/reference/graphics/d3d12/structs/d3d12_depth_stencilop_desc_public) 構造体。

*BackFace*\
型: D3D12\_DEPTH\_STENCILOP\_DESC

表面法線がカメラの方向から離れているピクセルに対して、深度テストとステンシル テストの結果をどのように使用するかを記述する [D3D12\_DEPTH\_STENCILOP\_DESC](/reference/graphics/d3d12/structs/d3d12_depth_stencilop_desc_public) 構造体。

*DepthBoundsTestEnable*\
型: BOOL

深度境界テストを有効にする場合は TRUE、それ以外の場合は FALSE。既定値は FALSE です。

## 解説

[D3D12\_GRAPHICS\_PIPELINE\_STATE\_DESC](/reference/graphics/d3d12_x/structs/d3d12_graphics_pipeline_state_desc) オブジェクトには、出力マージ ステージによる深度ステンシル テストの実行方法を制御する深度ステンシル状態構造体が含まれています。

次の表は、深度ステンシル状態の既定値を示しています。

<table>
  <tr>
    <th>状態</th>
    <th>既定値</th>
  </tr>

  <tr>
    <td>DepthEnable</td>
    <td>TRUE</td>
  </tr>

  <tr>
    <td>DepthWriteMask</td>
    <td>D3D12\_DEPTH\_WRITE\_MASK\_ALL</td>
  </tr>

  <tr>
    <td>DepthFunc</td>
    <td>D3D12\_COMPARISON\_LESS</td>
  </tr>

  <tr>
    <td>StencilEnable</td>
    <td>FALSE</td>
  </tr>

  <tr>
    <td>StencilReadMask</td>
    <td>D3D12\_DEFAULT\_STENCIL\_READ\_MASK</td>
  </tr>

  <tr>
    <td>StencilWriteMask</td>
    <td>D3D12\_DEFAULT\_STENCIL\_WRITE\_MASK</td>
  </tr>

  <tr>
    <td>
      FrontFace.StencilFunc

      および

      BackFace.StencilFunc
    </td>

    <td>D3D12\_COMPARISON\_ALWAYS</td>
  </tr>

  <tr>
    <td>
      FrontFace.StencilDepthFailOp

      および

      BackFace.StencilDepthFailOp
    </td>

    <td>D3D12\_STENCIL\_OP\_KEEP</td>
  </tr>

  <tr>
    <td>
      FrontFace.StencilPassOp

      および

      BackFace.StencilPassOp
    </td>

    <td>D3D12\_STENCIL\_OP\_KEEP</td>
  </tr>

  <tr>
    <td>
      FrontFace.StencilFailOp

      および

      BackFace.StencilFailOp
    </td>

    <td>D3D12\_STENCIL\_OP\_KEEP</td>
  </tr>

  <tr>
    <td>DepthBoundsTestEnable</td>
    <td>FALSE</td>
  </tr>
</table>

ステンシルをサポートするフォーマットは、DXGI\_FORMAT\_D24\_UNORM\_S8\_UINT および DXGI\_FORMAT\_D32\_FLOAT\_S8X24\_UINT です。

## 要件

**ヘッダー:** 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_PIPELINE_STATE_STREAM_DESC](/ja-jp/reference/graphics/d3d12/structs/d3d12_pipeline_state_stream_desc_public.md)
- [D3D12_RESOURCE_DESC1](/ja-jp/reference/graphics/d3d12/structs/d3d12_resource_desc1_public.md)
- [D3D12_ROOT_SIGNATURE_DESC1](/ja-jp/reference/graphics/d3d12/structs/d3d12_root_signature_desc1_public.md)
- [D3D12_DEPTH_STENCIL_DESC](/ja-jp/reference/graphics/d3d12/structs/d3d12_depth_stencil_desc_public.md)
- [D3D12_PROTECTED_RESOURCE_SESSION_DESC1](/ja-jp/reference/graphics/d3d12/structs/d3d12_protected_resource_session_desc1_public.md)
