Skip to main content
リソース内のデータにアクセスするためのシェーダー リソース ビューを作成します。

構文

パラメーター

pResource [in, optional]
型: ID3D12Resource *
シェーダー リソースを表す ID3D12Resource オブジェクトへのポインター。 pResource または pDesc の少なくとも一方を指定する必要があります。null の pResource は null デスクリプターの初期化に使用されます。これは、D3D11 と同様の null バインディング動作 (読み取り時は 0、書き込みは破棄) を保証しますが、デスクリプター タイプを判別するために有効な pDesc を持つ必要があります。 pDesc [in, optional]
型: const D3D12_SHADER_RESOURCE_VIEW_DESC *
シェーダー リソース ビューを記述する D3D12_SHADER_RESOURCE_VIEW_DESC 構造体へのポインター。 null の pDesc は、可能な場合、既定のデスクリプターの初期化に使用されます。この動作は、既定値が入力される D3D11 の null デスクリプターの動作と同じです。この動作では、リソースのフォーマットとディメンション (typeless でない場合) が継承され、バッファーの場合、SRV はバッファー全体を対象とし、型付き (raw または構造化ではない) となります。テクスチャの場合、SRV はテクスチャ全体、すべてのミップ、およびすべての配列スライスを対象とします。null デスクリプターの初期化をサポートしないリソースもあります。 DestDescriptor [in]
型: D3D12_CPU_DESCRIPTOR_HANDLE
シェーダー リソース ビューを表す CPU デスクリプター ハンドルを記述します。このハンドルは、シェーダー可視またはシェーダー可視でないデスクリプター ヒープに作成できます。

戻り値

型: void なし。

解説

YUV 4:2:0 ビデオ フォーマットの処理

アプリは、輝度 (Y) プレーンをクロマ (UV) プレーンとは別にマップする必要があります。開発者は、同じテクスチャに対して CreateShaderResourceView を 2 回呼び出し、1 チャネルおよび 2 チャネルのフォーマットを渡すことでこれを行います。Y プレーンと互換性のある 1 チャネル フォーマットを渡すと、Y プレーンのみがマップされます。UV プレーン (合わせて) と互換性のある 2 チャネル フォーマットを渡すと、U プレーンと V プレーンのみが単一のリソース ビューとしてマップされます。
YUV 4:2:0 フォーマットは、DXGI_FORMAT に一覧されています。

D3D12nBodyGravity サンプルでは、ID3D12Device::CreateShaderResourceView を次のように使用しています。 1 つの記述に基づいて 2 つのシェーダー リソース ビューを記述して作成します。
D3D12 リファレンスのサンプル コード を参照してください。

要件

ヘッダー: d3d12_xs.h または d3d12_x.h
ライブラリ: d3d12_xs.lib または d3d12_x.lib
サポートされているプラットフォーム: XBOX Series 本体および XBOX One ファミリ

関連項目

ID3D12Device
最終更新日 2026年8月13日