Функция D3DXCreateEffectFromFile
Создайте эффект на основе описания ASCII или двоичного эффекта.
Синтаксис
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
);
Параметры
-
pDevice [in]
-
Тип: LPDIRECT3DDEVICE9
Указатель на устройство, которое создаст эффект. См. раздел IDirect3DDevice9.
-
pSrcFile [in]
-
Тип: LPCTSTR
Указатель на имя файла. Этот параметр поддерживает строки Юникода и ANSI. См. заметки.
-
pDefines [in]
-
Тип: const D3DXMACRO*
Необязательный массив определений макросов препроцессора с завершением NULL. См . раздел D3DXMACRO.
-
pВключение [in]
-
Тип: LPD3DXINCLUDE
Необязательный указатель интерфейса ID3DXInclude, используемый для обработки директив #include. Если это значение равно NULL, #includes будет учитываться при компиляции из файла или вызвать ошибку при компиляции из ресурса или памяти.
-
Флаги [в]
-
Тип: DWORD
Если pSrcFile содержит текстовый эффект, флаги могут быть сочетанием флагов D3DXSHADER и D3DXFX ; В противном случае pSrcFile содержит двоичный эффект, и единственными флагами являются флаги D3DXFX. Компилятор Direct3D 10 HLSL теперь используется по умолчанию. Дополнительные сведения см. в разделе Effect-Compiler Tool .
-
pPool [in]
-
Тип: LPD3DXEFFECTPOOL
Указатель на объект ID3DXEffectPool , используемый для общих параметров. Если это значение равно NULL, параметры не будут совместно использоваться.
-
ppEffect [out]
-
Тип: LPD3DXEFFECT*
Возвращает указатель на буфер, содержащий скомпилированный эффект. См . раздел ID3DXEffect.
-
ppCompilationErrors [out]
-
Тип: LPD3DXBUFFER*
Возвращает указатель на буфер, содержащий список ошибок компиляции. См . раздел ID3DXBuffer.
Возвращаемое значение
Тип: HRESULT
Если функция выполняется успешно, возвращаемое значение будет D3D_OK. Если функция завершается сбоем, возвращаемое значение может быть одним из следующих: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA E_OUTOFMEMORY.
Комментарии
Если для параметров компилятора требуется Юникод, тип данных LPCTSTR разрешается в LPCWSTR. В противном случае тип данных LPCTSTR разрешается в LPCSTR.
Параметр компилятора также определяет версию функции. Если определен Юникод, вызов функции разрешается в D3DXCreateEffectFromFileW. В противном случае вызов функции разрешается в D3DXCreateEffectFromFileA, так как используются строки ANSI.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел