Freigeben über


D3DX10ReflectShader-Funktion

Diese Funktion, die ein Shaderreflektionsobjekt zum Abrufen von Informationen zu einem kompilierten Shader erstellt, ist nicht mehr vorhanden. Verwenden Sie stattdessen D3DReflect oder D3D11Reflect.

Syntax

HRESULT D3DX10ReflectShader(
  _In_  const void                    *pShaderBytecode,
  _In_        SIZE_T                  BytecodeLength,
  _Out_       ID3D10ShaderReflection1 **ppReflector
);

Parameter

pShaderBytecode [in]

Typ: const void*

Ein Zeiger auf den kompilierten Shader. Informationen zum Abrufen dieses Zeigers finden Sie unter Abrufen eines Zeigers auf einen kompilierten Shader.

BytecodeLength [in]

Typ: SIZE_T

Länge von pShaderBytecode.

ppReflector [out]

Typ: ID3D10ShaderReflection1**

Adresse einer Shaderreflektionsschnittstelle (siehe ID3D10ShaderReflection1-Schnittstelle.)

Rückgabewert

Typ: HRESULT

Gibt einen der folgenden Direct3D 10-Rückgabecodes zurück.

Bemerkungen

Hier sehen Sie ein Beispiel für das Erstellen eines Shaderreflektionsobjekts. Im Beispiel wird davon ausgegangen, dass Sie mit einem kompilierten Shader beginnen (dargestellt als

pVSBuf

sehen Sie im HLSLWithoutFX10-Beispiel).

ID3D10ShaderReflection1* pIShaderReflection1 = NULL;
D3D10_SHADER_DESC desc;
hr = D3D10ReflectShader( (void*) pVSBuf->GetBufferPointer(), pVSBuf->GetBufferSize(),
    &pIShaderReflection1 );
if( pIShaderReflection1 )
{
    pIShaderReflection1->GetDesc( &desc );
}

Anforderungen

Anforderung Wert
Header
D3DX10Core.h

Siehe auch

Universell-Funktionen