Compartir a través de


Función D3DX10CompileFromResource

Nota

En lugar de usar esta función heredada, se recomienda compilar sin conexión mediante el compilador de línea de comandos Fxc.exe o usar la API D3DCompile .

 

Compile un sombreador o un efecto a partir de un recurso.

Sintaxis

HRESULT D3DX10CompileFromResource(
  _In_        HMODULE            hSrcModule,
  _In_        LPCTSTR            pSrcResource,
  _In_        LPCTSTR            pSrcFileName,
  _In_  const D3D_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        LPCSTR             pFunctionName,
  _In_        LPCSTR             pProfile,
  _In_        UINT               Flags1,
  _In_        UINT               Flags2,
  _In_        ID3DX10ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShader,
  _Out_       ID3D10Blob         **ppErrorMsgs,
  _Out_       HRESULT            *pHResult
);

Parámetros

hSrcModule [in]

Tipo: HMODULE

Identificador del módulo de recursos que contiene el sombreador. HMODULE se puede obtener con la función GetModuleHandle.

pSrcResource [in]

Tipo: LPCTSTR

Nombre del recurso que contiene el sombreador. Si la configuración del compilador requiere Unicode, el tipo de datos LPCTSTR se resuelve en LPCWSTR. De lo contrario, el tipo de datos se resuelve en LPCSTR.

pSrcFileName [in]

Tipo: LPCTSTR

Opcional. Nombre de archivo de efecto, que solo se usa para los mensajes de error. Puede ser NULL.

pDefines [in]

Tipo: const D3D_SHADER_MACRO*

Opcional. Puntero a una matriz de definiciones de macros (vea D3D_SHADER_MACRO). La última estructura de la matriz actúa como terminador y debe tener todos los miembros establecidos en 0. Si no se usa, establezca pDefines en NULL.

pInclude [in]

Tipo: LPD3D10INCLUDE

Opcional. Puntero a una interfaz de interfaz ID3D10Include para controlar archivos de inclusión. Si un sombreador contiene un #include, se producirá un error de compilación.

pFunctionName [in]

Tipo: LPCSTR

Nombre de la función de punto de entrada del sombreador donde comienza la ejecución del sombreador. Al compilar un efecto, D3DX10CompileFromResource omite pFunctionName; Se recomienda establecer pFunctionName en NULL porque es una buena práctica de programación establecer un parámetro de puntero en NULL si la función llamada no la usará.

pProfile [in]

Tipo: LPCSTR

Cadena que especifica el modelo de sombreador; puede ser cualquier perfil en el modelo de sombreador 2, el modelo de sombreador 3 o el modelo 4 del sombreador.

Flags1 [in]

Tipo: UINT

Marcas de compilación del sombreador.

Flags2 [in]

Tipo: UINT

Marcas de compilación de efectos. Al compilar un sombreador y no un archivo de efecto, D3DX10CompileFromResource omite Flags2; se recomienda establecer Flags2 en cero, ya que es recomendable establecer un parámetro que no sea de puntero en cero si la función llamada no la usará.

pPump [in]

Tipo: ID3DX10ThreadPump*

Puntero a una interfaz de bomba de subproceso (vea ID3DX10ThreadPump Interface). Use NULL para especificar que esta función no debe devolverse hasta que se complete.

ppShader [out]

Tipo: ID3D10Blob**

Puntero a una interfaz ID3D10Blob que contiene el sombreador compilado, así como cualquier información insertada de depuración y tabla de símbolos.

ppErrorMsgs [out]

Tipo: ID3D10Blob**

Puntero a una interfaz ID3D10Blob que contiene una lista de errores y advertencias que se produjeron durante la compilación. Estos errores y advertencias son idénticos a la salida de depuración de un depurador.

pHResult [out]

Tipo: HRESULT*

Puntero al valor devuelto. Puede ser NULL. Si pPump no es NULL, pHResult debe ser una ubicación de memoria válida hasta que se complete la ejecución asincrónica.

Valor devuelto

Tipo: HRESULT

El valor devuelto es uno de los valores enumerados en Códigos de retorno de Direct3D 10.

Requisitos

Requisito Value
Encabezado
D3DX10Async.h

Vea también

Funciones de De uso general