深度型ステンシルバッファリソースは、DXGI_FORMAT_D24_UNORM_S8_UINT
フォーマットと定義されています。深度ステンシルバッファリソースへのシェーダリソースビューに使用する形式はどれですか?
Iを説明するための表示形式を必要とするであろう、そのリソースへのシェーダリソースビュー(SRV)を作成することを想定しているであろういずれかとして:赤チャネルの深さ値 にアクセス
DXGI_FORMAT_R24_UNORM_X8_TYPELESS
赤チャネルは、SRVはで失敗作成、
しかし深さと緑チャネルステンシル値にアクセス
DXGI_FORMAT_R24G8_TYPELESS
型なしフォーマットはとを許可されていない理由を
When viewing a resource, the resource-view description must specify a typed format, that is compatible with the resource format. So that means that you can't create a resource-view description using any format with _TYPELESS in the name. You can however view a typeless resource by specifying a typed format for the view.
は、私は本当にを理解していない:次のエラー:
D3D12 ERROR: ID3D12Device::CreateShaderResourceView: For the resource format D24_UNORM_S8_UINT, when making a D3D view, the format name for the view can't be R24_UNORM_X8_TYPELESS. See documentation for the set of valid view format names for this resource format, determining which how the resource (or part of it) will appear to shader. [ STATE_CREATION ERROR #28: CREATESHADERRESOURCEVIEW_INVALIDFORMAT]
API docを見ると、情報の以下の部分で私をもたらしました代わりにどの形式を使用する必要がありますか?
ありがとう、それは完璧な意味があります!私はリソースを 'R24G8_TYPELESS'、DSVを' D24_UNORM_S8_UINT'、SRVを 'R24_UNORM_X8_TYPELESS'と定義しました。 –