Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Crea un id3D10Effect a partir de un búfer que contiene un efecto compilado.
Sintaxis
HRESULT D3D10CreateEffectFromMemory(
[in] void *pData,
[in] SIZE_T DataLength,
[in] UINT FXFlags,
[in] ID3D10Device *pDevice,
[in] ID3D10EffectPool *pEffectPool,
[out] ID3D10Effect **ppEffect
);
Parámetros
[in] pData
Tipo: void*
Puntero a un efecto compilado.
[in] DataLength
Tipo: SIZE_T
Longitud de pData.
[in] FXFlags
Tipo: UINT
Opciones de compilación de efectos.
[in] pDevice
Tipo: ID3D10Device*
Puntero al dispositivo (consulte ID3D10Device Interface).
[in] pEffectPool
Tipo: ID3D10EffectPool*
Opcional. Puntero a un espacio de memoria para las variables de efecto que se comparten entre efectos (vea ID3D10EffectPool Interface).
[out] ppEffect
Tipo: ID3D10Effect**
Puntero a una interfaz ID3D10Effect que contiene el efecto creado.
Valor devuelto
Tipo: HRESULT
Devuelve uno de los siguientes códigos de retorno de Direct3D 10.
Observaciones
Nota:
La vinculación d3d10_1.lib proporciona la implementación en d3d10_1.dll, que es la implementación del modelo de programación Direct3D10.1. La vinculación d3d10.lib proporciona la implementación en d3d10.dll, que es la implementación del modelo de programación direct3D10.
Este método se usa para crear un objeto ID3D10Effect Interface a partir de un efecto compilado antes del tiempo de ejecución y cargado en la memoria. Para obtener ayuda para precompilar un efecto, consulte Compilación sin conexión. Para cargar y compilar un archivo .fx ASCII, vea Compilar un efecto (Direct3D 10).
Ejemplos
Compilación del efecto
fxc.exe /T fx_4_0 /Fo Tutorial03.fxo Tutorial03.fx
Cargue el efecto compilado en tiempo de ejecución.
ifstream is("tutorial03.fxo", ios::binary);
is.seekg(0,ios_base::end);
streampos pos = is.tellg();
is.seekg(0,ios_base::beg);
char * effectBuffer = new char[pos];
is.read(effectBuffer,pos);
hr = D3D10CreateEffectFromMemory((void *)effectBuffer,pos,0,g_pd3dDevice,NULL,&g_pEffect);
Requisitos
| Plataforma de destino | Windows |
| Encabezado | d3d10effect.h |
| Library | d3d10_1.lib, d3d10.lib |
| Archivo DLL | d3d10_1.dll, d3d10.dll |