D3D11Reflect 関数
リフレクション インターフェイスへのポインターを取得します。
構文
HRESULT D3D11Reflect(
in LPCVOID pSrcData,
in SIZE_T SrcDataSize,
out ID3D11ShaderReflection ppReflector
);
パラメーター
-
pSrcData [in]
-
種類: LPCVOID
コンパイルされた HLSL コードとしてのソース データへのポインター。
-
SrcDataSize [in]
-
種類: SIZE_T
pSrcData の長さ。
-
ppReflector [out]
-
種類: ID3D11ShaderReflection**
ID3D11ShaderReflection インターフェイスへのポインターのアドレス。
戻り値
型: HRESULT
「Direct3D 11 リターン コード」で説明されているリターン コードのいずれかを返します。
解説
インライン D3D11Reflect コンパイラ関数は、 D3DReflect コンパイラ関数のラッパーです。 D3D11Reflect は、シェーダーから ID3D11ShaderReflection インターフェイスのみを取得できます。 D3DReflect は 、ID3D11ShaderReflection インターフェイス、または Direct3D 10 または Direct3D 10.1 リフレクション インターフェイス ( ID3D10ShaderReflection など) を取得できます。
シェーダー コードには、リフレクション API を使用して検査できるメタデータが含まれています。
次のコードは、シェーダーから ID3D11ShaderReflection インターフェイスを取得する方法を示しています。
pd3dDevice->CreatePixelShader( pPixelShaderBuffer->GetBufferPointer(),
pPixelShaderBuffer->GetBufferSize(), g_pPSClassLinkage, &g_pPixelShader );
ID3D11ShaderReflection* pReflector = NULL;
D3D11Reflect( pPixelShaderBuffer->GetBufferPointer(), pPixelShaderBuffer->GetBufferSize(),
&pReflector);
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
[DLL] |
|