PFND3D12DDI_GET_SHADER_IDENTIFIER_0054 コールバック関数 (d3d12umddi.h)
シェーダー レコードで使用できるシェーダーの一意識別子を取得します。
構文
PFND3D12DDI_GET_SHADER_IDENTIFIER_0054 Pfnd3d12ddiGetShaderIdentifier0054;
void * Pfnd3d12ddiGetShaderIdentifier0054(
D3D12DDI_HSTATEOBJECT_0054 unnamedParam1,
LPCWSTR pExportName
)
{...}
パラメーター
unnamedParam1
状態オブジェクトへのハンドル。 状態オブジェクトには、コレクションまたはレイ トレーシング パイプライン状態オブジェクトを指定できます。
pExportName
識別子を取得する状態オブジェクトのエントリ ポイント。
戻り値
シェーダー識別子へのポインターを返します。 シェーダーが状態オブジェクトで完全に解決されていない場合、戻り値は nullptr になります。
備考
戻りデータは、元の状態オブジェクトが有効である限り有効です。 返されるデータのサイズは、コールバック関数 GetShaderStackSize 指定されます。 アプリケーションでは、このデータをコピーしてキャッシュして、何度も取得する必要がある場合に状態オブジェクトで検索するコストを回避する必要があります。 識別子が実際に使用される場所は、GPU メモリ内のシェーダー テーブル内のシェーダー レコードにあります。これは、アプリが設定する必要があります。
データ自体はシェーダーをグローバルに識別するため、シェーダーが異なる状態オブジェクト (ルート シグネチャと同じ関連付けを持つ) に表示される場合でも、同じ識別子を持ちます。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 バージョン 1809 |
ヘッダー | d3d12umddi.h |