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 |