Share via


Función D3DX10CompileFromMemory

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 que se cargue en la memoria.

Sintaxis

HRESULT D3DX10CompileFromMemory(
  _In_        LPCSTR             pSrcData,
  _In_        SIZE_T             SrcDataLen,
  _In_        LPCSTR             pFileName,
  _In_  const D3D10_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

pSrcData [in]

Tipo: LPCSTR

Puntero al sombreador en memoria.

SrcDataLen [in]

Tipo: SIZE_T

Tamaño del sombreador en memoria.

pFileName [in]

Tipo: LPCSTR

Nombre del archivo que contiene el código del sombreador.

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 se establece en NULL , se producirá un error de compilación si un sombreador contiene un #include.

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, D3DX10CompileFromMemory 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, D3DX10CompileFromMemory omite Flags2; Se recomienda establecer Flags2 en cero porque es una buena práctica de programación 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 (consulta 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 incrustada 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

Consulte también

Funciones de De uso general