跳轉到主要內容
描述深度樣板狀態。

語法

成員

DepthEnable
類型:BOOL
指定是否要啟用深度測試。將此成員設為 TRUE 可啟用深度測試。 DepthWriteMask
類型:D3D12_DEPTH_WRITE_MASK
D3D12_DEPTH_WRITE_MASK 類型的值,識別深度樣板緩衝區中可由深度資料修改的部分。 DepthFunc
類型:D3D12_COMPARISON_FUNC
D3D12_COMPARISON_FUNC 類型的值,識別將深度資料與現有深度資料進行比較的函式。 StencilEnable
類型:BOOL
指定是否要啟用樣板測試。將此成員設為 TRUE 可啟用樣板測試。 StencilReadMask
類型:UINT8
識別深度樣板緩衝區中用於讀取樣板資料的部分。 StencilWriteMask
類型:UINT8
識別深度樣板緩衝區中用於寫入樣板資料的部分。 FrontFace
類型:D3D12_DEPTH_STENCILOP_DESC
D3D12_DEPTH_STENCILOP_DESC 結構,描述對於表面法線朝向攝影機的像素,如何使用深度測試與樣板測試的結果。 BackFace
類型:D3D12_DEPTH_STENCILOP_DESC
D3D12_DEPTH_STENCILOP_DESC 結構,描述對於表面法線背向攝影機的像素,如何使用深度測試與樣板測試的結果。

備註

D3D12_GRAPHICS_PIPELINE_STATE_DESC 物件包含深度樣板狀態結構,用以控制輸出合併階段如何執行深度樣板測試。 下表顯示深度樣板狀態的預設值。
狀態預設值
DepthEnableTRUE
DepthWriteMaskD3D12_DEPTH_WRITE_MASK_ALL
DepthFuncD3D12_COMPARISON_FUNC_LESS
StencilEnableFALSE
StencilReadMaskD3D12_DEFAULT_STENCIL_READ_MASK
StencilWriteMaskD3D12_DEFAULT_STENCIL_WRITE_MASK
FrontFace.StencilFailOp與BackFace.StencilFailOpD3D12_STENCIL_OP_KEEP
FrontFace.StencilDepthFailOp與BackFace.StencilDepthFailOpD3D12_STENCIL_OP_KEEP
FrontFace.StencilPassOp與BackFace.StencilPassOpD3D12_STENCIL_OP_KEEP
FrontFace.StencilFunc與BackFace.StencilFuncD3D12_COMPARISON_FUNC_ALWAYS
支援樣板的格式為 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 系列

另請參閱

CD3DX12_DEPTH_STENCIL_DESC 核心結構
最後修改於 2026年10月6日