Compartir a través de


Función D3D10DisassembleEffect (d3d10effect.h)

Esta función ,que desensambla un efecto compilado en una cadena de texto que contiene instrucciones de ensamblado y asignaciones de registro, ha quedado en desuso. En su lugar, use D3DDisassemble10Effect.

Sintaxis

HRESULT D3D10DisassembleEffect(
  [in]  ID3D10Effect *pEffect,
  [in]  BOOL         EnableColorCode,
  [out] ID3D10Blob   **ppDisassembly
);

Parámetros

[in] pEffect

Tipo: ID3D10Effect*

Puntero a una interfaz ID3D10Effect, que contiene el efecto compilado.

[in] EnableColorCode

Tipo: BOOL

Incluya etiquetas HTML en la salida para codificar el resultado.

[out] ppDisassembly

Tipo: ID3D10Blob**

Puntero a una interfaz ID3D10Blob que contiene el sombreador desmontado.

Valor devuelto

Tipo: HRESULT

Devuelve uno de los siguientes códigos de retorno de Direct3D 10.

Comentarios

Este texto devuelto incluye un encabezado con la versión del compilador HLSL usado para generar este objeto, comentarios que describen el diseño de memoria de los búferes de constantes utilizados por el sombreador, las firmas de entrada y salida, y los puntos de enlace de recursos.

Este es un ejemplo de desensamblar un efecto compilado. En el ejemplo se supone que empieza con un efecto compilado (se muestra como l_pBlob_Effect que puede ver en Compilar un efecto (Direct3D 10)).


LPCSTR commentString = NULL;
ID3D10Blob* pIDisassembly = NULL;
char* pDisassembly = NULL;
if( pVSBuf )
{
    D3D10DisassembleEffect( (UINT*) l_pBlob_Effect->GetBufferPointer(),
        l_pBlob_Effect->GetBufferSize(), TRUE, commentString, &pIDisassembly );
    if( pIDisassembly )
    {
        FILE* pFile = fopen( "effect.htm", "w" );
        if( pFile)
        {
            fputs( (char*)pIDisassembly->GetBufferPointer(), pFile );
            fclose( pFile );
        }
    }
}

Requisitos

   
Plataforma de destino Windows
Encabezado d3d10effect.h
Library D3D10.lib
Archivo DLL D3D10.dll

Consulte también

Funciones de efecto (Direct3D 10)