Freigeben über


D3D11Reflect-Funktion

Ruft einen Zeiger auf eine Reflektionsschnittstelle ab.

Syntax

HRESULT D3D11Reflect(
  in  LPCVOID pSrcData,
  in  SIZE_T SrcDataSize,
  out ID3D11ShaderReflection ppReflector
);

Parameter

pSrcData [in]

Typ: LPCVOID

Ein Zeiger auf Quelldaten als kompilierten HLSL-Code.

SrcDataSize [in]

Typ: SIZE_T

Länge von pSrcData.

ppReflector [out]

Typ: ID3D11ShaderReflection**

Die Adresse eines Zeigers auf die ID3D11ShaderReflection-Schnittstelle .

Rückgabewert

Typ: HRESULT

Gibt einen der Rückgabecodes zurück, die im Thema Direct3D 11-Rückgabecodes beschrieben sind.

Bemerkungen

Die Inline-Compilerfunktion D3D11Reflect ist ein Wrapper für die Compilerfunktion D3DReflect . D3D11Reflect kann nur eine ID3D11ShaderReflection-Schnittstelle aus einem Shader abrufen. D3DReflect kann eine ID3D11ShaderReflection-Schnittstelle oder eine Direct3D 10- oder Direct3D 10.1-Reflektionsschnittstelle abrufen, z. B. ID3D10ShaderReflection.

Shadercode enthält Metadaten, die mithilfe der Reflektions-APIs überprüft werden können.

Der folgende Code zeigt, wie Sie eine ID3D11ShaderReflection-Schnittstelle aus einem Shader abrufen.

pd3dDevice->CreatePixelShader( pPixelShaderBuffer->GetBufferPointer(),
                               pPixelShaderBuffer->GetBufferSize(), g_pPSClassLinkage, &g_pPixelShader );

ID3D11ShaderReflection* pReflector = NULL; 
D3D11Reflect( pPixelShaderBuffer->GetBufferPointer(), pPixelShaderBuffer->GetBufferSize(), 
            &pReflector);

Anforderungen

Anforderung Wert
Header
D3DCompiler.inl
Bibliothek
D3dcompiler_47.lib
DLL
D3dcompiler_47.dll

Siehe auch

Funktionen