D3D11_DEPTH_STENCIL_DESC 構造体 (d3d11.h)
深度ステンシルの状態について説明します。
構文
typedef struct D3D11_DEPTH_STENCIL_DESC {
BOOL DepthEnable;
D3D11_DEPTH_WRITE_MASK DepthWriteMask;
D3D11_COMPARISON_FUNC DepthFunc;
BOOL StencilEnable;
UINT8 StencilReadMask;
UINT8 StencilWriteMask;
D3D11_DEPTH_STENCILOP_DESC FrontFace;
D3D11_DEPTH_STENCILOP_DESC BackFace;
} D3D11_DEPTH_STENCIL_DESC;
メンバー
DepthEnable
種類: BOOL
深度テストを有効にします。
DepthWriteMask
深度データで変更できる深度ステンシル バッファーの一部を特定します ( 「D3D11_DEPTH_WRITE_MASK」を参照)。
DepthFunc
深度データと既存の深度データを比較する関数。 関数のオプションは、 D3D11_COMPARISON_FUNCに一覧表示されます。
StencilEnable
種類: BOOL
ステンシル テストを有効にします。
StencilReadMask
種類: UINT8
ステンシル データを読み取るための深度ステンシル バッファーの一部を特定します。
StencilWriteMask
種類: UINT8
ステンシル データを書き込む深度ステンシル バッファーの一部を特定します。
FrontFace
種類: D3D11_DEPTH_STENCILOP_DESC
深度テストの結果と、サーフェスの法線がカメラに向いているピクセルのステンシル テストの使用方法を特定します ( D3D11_DEPTH_STENCILOP_DESCを参照)。
BackFace
種類: D3D11_DEPTH_STENCILOP_DESC
サーフェス法線がカメラから離れているピクセルに対して深度テストとステンシル テストの結果を使用する方法を特定します ( 「D3D11_DEPTH_STENCILOP_DESC」を参照)。
注釈
D3D11_DEPTH_STENCIL_DESCへのポインターを ID3D11Device::CreateDepthStencilState メソッドに渡して、深度ステンシル状態オブジェクトを作成します。
深度ステンシルの状態は、出力マージャー ステージによって深度ステンシル テストを実行する方法を制御します。
次の表は、深度ステンシルの状態の既定値を示しています。
状態 | 既定値 |
---|---|
DepthEnable | TRUE |
DepthWriteMask | D3D11_DEPTH_WRITE_MASK_ALL |
DepthFunc | D3D11_COMPARISON_LESS |
StencilEnable | FALSE |
StencilReadMask | D3D11_DEFAULT_STENCIL_READ_MASK |
StencilWriteMask | D3D11_DEFAULT_STENCIL_WRITE_MASK |
FrontFace.StencilFunc および BackFace.StencilFunc |
D3D11_COMPARISON_ALWAYS |
FrontFace.StencilDepthFailOp および BackFace.StencilDepthFailOp |
D3D11_STENCIL_OP_KEEP |
FrontFace.StencilPassOp および BackFace.StencilPassOp |
D3D11_STENCIL_OP_KEEP |
FrontFace.StencilFailOp および BackFace.StencilFailOp |
D3D11_STENCIL_OP_KEEP |
ステンシルをサポートする形式は、DXGI_FORMAT_D24_UNORM_S8_UINTとDXGI_FORMAT_D32_FLOAT_S8X24_UINT。
要件
要件 | 値 |
---|---|
Header | d3d11.h |