次の方法で共有


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);

要件

要件
ヘッダー
D3DCompiler.inl
ライブラリ
D3dcompiler_47.lib
[DLL]
D3dcompiler_47.dll

関連項目

関数