Compartir a través de


Función D3DXCreateEffectFromFile

Cree un efecto a partir de una descripción de efecto ASCII o binario.

Sintaxis

HRESULT D3DXCreateEffectFromFile(
  _In_        LPDIRECT3DDEVICE9 pDevice,
  _In_        LPCTSTR           pSrcFile,
  _In_  const D3DXMACRO         *pDefines,
  _In_        LPD3DXINCLUDE     pInclude,
  _In_        DWORD             Flags,
  _In_        LPD3DXEFFECTPOOL  pPool,
  _Out_       LPD3DXEFFECT      *ppEffect,
  _Out_       LPD3DXBUFFER      *ppCompilationErrors
);

Parámetros

pDevice [in]

Tipo: LPDIRECT3DDEVICE9

Puntero al dispositivo que creará el efecto. Consulta IDirect3DDevice9.

pSrcFile [in]

Tipo: LPCTSTR

Puntero al nombre de archivo. Este parámetro admite cadenas Unicode y ANSI. Vea la sección Comentarios.

pDefines [in]

Tipo: const D3DXMACRO*

Matriz opcional terminada en NULL de definiciones de macros de preprocesador. Consulte D3DXMACRO.

pInclude [in]

Tipo: LPD3DXINCLUDE

Puntero de interfaz opcional, ID3DXInclude, que se usará para controlar directivas de #include. Si este valor es NULL, #includes se respetará al compilar desde un archivo o provocará un error cuando se compile desde un recurso o memoria.

Marcas [in]

Tipo: DWORD

Si pSrcFile contiene un efecto de texto, las marcas pueden ser una combinación de marcas D3DXSHADER y marcas D3DXFX ; de lo contrario, pSrcFile contiene un efecto binario y las únicas marcas que se respetan son marcas D3DXFX. El compilador HLSL de Direct3D 10 ahora es el valor predeterminado. Consulte Effect-Compiler Tool (Herramienta del compilador de efectos ) para obtener más información.

pPool [in]

Tipo: LPD3DXEFFECTPOOL

Puntero a un objeto ID3DXEffectPool que se usará para los parámetros compartidos. Si este valor es NULL, no se compartirá ningún parámetro.

ppEffect [out]

Tipo: LPD3DXEFFECT*

Devuelve un puntero a un búfer que contiene el efecto compilado. Consulte ID3DXEffect.

ppCompilationErrors [out]

Tipo: LPD3DXBUFFER*

Devuelve un puntero a un búfer que contiene una lista de errores de compilación. Consulte ID3DXBuffer.

Valor devuelto

Tipo: HRESULT

Si la función se realiza correctamente, el valor devuelto se D3D_OK. Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.

Comentarios

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

La configuración del compilador también determina la versión de la función. Si se define Unicode, la llamada de función se resuelve en D3DXCreateEffectFromFileW. De lo contrario, la llamada de función se resuelve en D3DXCreateEffectFromFileA porque se usan cadenas ANSI.

Requisitos

Requisito Value
Encabezado
D3DX9Effect.h
Biblioteca
D3dx9.lib

Consulte también

Funciones de efecto

D3DXCompileShader

D3DXCompileShaderFromResource