Función D3DPreprocess (d3dcompiler.h)
Preprocesa código HLSL sin compilar.
Sintaxis
HRESULT D3DPreprocess(
[in] LPCVOID pSrcData,
[in] SIZE_T SrcDataSize,
[in, optional] LPCSTR pSourceName,
[in, optional] const D3D_SHADER_MACRO *pDefines,
[in, optional] ID3DInclude *pInclude,
[out] ID3DBlob **ppCodeText,
[out, optional] ID3DBlob **ppErrorMsgs
);
Parámetros
[in] pSrcData
Tipo: LPCVOID
Puntero a datos de sombreador sin compilar; código ASCII HLSL o un efecto compilado.
[in] SrcDataSize
Tipo: SIZE_T
Longitud de pSrcData.
[in, optional] pSourceName
Tipo: LPCSTR
Nombre del archivo que contiene el código HLSL sin compilar.
[in, optional] pDefines
Tipo: const D3D_SHADER_MACRO*
Matriz de definiciones de macro terminadas en NULL (vea D3D_SHADER_MACRO).
[in, optional] pInclude
Tipo: ID3DInclude*
Puntero a un id3DInclude para controlar archivos de inclusión. Si un sombreador contiene un #include, se producirá un error de compilación. Puede pasar la macro D3D_COMPILE_STANDARD_FILE_INCLUDE , que es un puntero a un controlador de inclusión predeterminado. Este controlador de inclusión predeterminado incluye archivos relativos al directorio y los archivos actuales relativos al directorio del archivo de origen inicial. Al usar D3D_COMPILE_STANDARD_FILE_INCLUDE, debe especificar el nombre del archivo de origen en el parámetro pSourceName ; el compilador derivará el directorio relativo inicial de pSourceName.
#define D3D_COMPILE_STANDARD_FILE_INCLUDE ((ID3DInclude*)(UINT_PTR)1)
[out] ppCodeText
Tipo: ID3DBlob**
Dirección de un id3DBlob que contiene el código compilado.
[out, optional] ppErrorMsgs
Tipo: ID3DBlob**
Puntero a un id3DBlob que contiene mensajes de error del compilador o NULL si no había errores.
Valor devuelto
Tipo: HRESULT
Devuelve uno de los códigos de retorno de Direct3D 11.
Comentarios
D3DPreprocess genera directivas #line y conserva la numeración de líneas de entrada de origen para que la numeración de líneas de salida pueda estar correctamente relacionada con el origen de entrada.
Requisitos
Plataforma de destino | Windows |
Encabezado | d3dcompiler.h |
Library | D3dcompiler_47.lib |
Archivo DLL | D3dcompiler_47.dll |