Функция D3D10CreateEffectFromMemory (d3d10effect.h)
Создает ID3D10Effect из буфера, содержащего скомпилированный эффект.
Синтаксис
HRESULT D3D10CreateEffectFromMemory(
[in] void *pData,
[in] SIZE_T DataLength,
[in] UINT FXFlags,
[in] ID3D10Device *pDevice,
[in] ID3D10EffectPool *pEffectPool,
[out] ID3D10Effect **ppEffect
);
Параметры
[in] pData
Тип: void*
Указатель на скомпилированный эффект.
[in] DataLength
Тип: SIZE_T
Длина pData.
[in] FXFlags
Тип: UINT
Параметры компиляции эффектов.
[in] pDevice
Тип: ID3D10Device*
Указатель на устройство (см . id3D10Device Interface).
[in] pEffectPool
Тип: ID3D10EffectPool*
Необязательный элемент. Указатель на пространство памяти для переменных эффекта, которые являются общими для эффектов (см. интерфейс ID3D10EffectPool).
[out] ppEffect
Тип: ID3D10Effect**
Указатель на интерфейс ID3D10Effect , содержащий созданный эффект.
Возвращаемое значение
Тип: HRESULT
Возвращает один из следующих кодов возврата Direct3D 10.
Комментарии
Примечание
Связывание d3d10_1.lib
предоставляет реализацию в d3d10_1.dll
, которая является реализацией модели программирования Direct3D10.1. Связывание d3d10.lib
предоставляет реализацию в d3d10.dll
, который является реализацией модели программирования Direct3D10.
Этот метод используется для создания объекта интерфейса ID3D10Effect из эффекта, который был скомпилирован перед средой выполнения и загружен в память. Сведения о предварительной компиляции эффекта см. в разделе Автономная компиляция. Сведения о загрузке и компиляции FX-файла ASCII см. в разделе Компиляция эффекта (Direct3D 10).
Примеры
Компиляция эффекта
fxc.exe /T fx_4_0 /Fo Tutorial03.fxo Tutorial03.fx
Загрузите скомпилированный эффект во время выполнения.
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);
Требования
Целевая платформа | Windows |
Header | d3d10effect.h |
Библиотека | d3d10_1.lib, d3d10.lib |
DLL | d3d10_1.dll, d3d10.dll |