Функция D3DX10CompileFromFile
Примечание
Вместо использования этой устаревшей функции рекомендуется компилировать его в автономном режиме с помощью компилятора командной строки Fxc.exe или использовать API D3DCompile .
Скомпилируйте шейдер или эффект из файла.
Синтаксис
HRESULT D3DX10CompileFromFile(
_In_ LPCTSTR pSrcFile,
_In_ const D3D_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
);
Параметры
-
pSrcFile [in]
-
Тип: LPCTSTR
Имя файла, содержащего код шейдера. Если для параметров компилятора требуется Юникод, тип данных LPCTSTR разрешается в LPCWSTR. В противном случае тип данных разрешается в LPCSTR.
-
pDefines [in]
-
Тип: const D3D_SHADER_MACRO*
Необязательный элемент. Указатель на массив определений макросов (см. D3D_SHADER_MACRO). Последняя структура в массиве служит признаком конца и должна иметь все члены, равные 0. Если значение не используется, задайте для pDefines значение NULL.
-
pInclude [in]
-
Тип: LPD3D10INCLUDE
Необязательный элемент. Указатель на интерфейс интерфейса ID3D10Include для обработки файлов включаемых файлов. Установка этого значения NULL приведет к ошибке компиляции, если шейдер содержит #include.
-
pFunctionName [in]
-
Тип: LPCSTR
Имя функции точки входа шейдера, в которой начинается выполнение шейдера. При компиляции эффекта D3DX10CompileFromFile игнорирует pFunctionName; Рекомендуется задать для параметра pFunctionName значение NULL , так как рекомендуется при программировании задать для параметра указателя значение NULL , если вызываемая функция не будет ее использовать.
-
pProfile [in]
-
Тип: LPCSTR
Строка, задающая модель шейдера; может быть любым профилем в модели шейдера 2, модели 3 или модели шейдера 4.
-
Flags1 [in]
-
Тип: UINT
-
Flags2 [in]
-
Тип: UINT
Флаги компиляции эффектов. При компиляции шейдера, а не файла эффекта, D3DX10CompileFromFile игнорирует Flags2; Рекомендуется установить значение Flags2 равным нулю, так как рекомендуется при программировании задать для параметра nonpointer значение 0, если вызываемая функция не будет ее использовать.
-
pPump [in]
-
Тип: ID3DX10ThreadPump*
Указатель на интерфейс насоса потока (см. раздел ID3DX10ThreadPump Interface). Используйте значение NULL , чтобы указать, что эта функция не должна возвращаться, пока она не будет завершена.
-
ppShader [out]
-
Тип: ID3D10Blob**
Указатель на интерфейс ID3D10Blob , содержащий скомпилированный шейдер, а также все встроенные сведения об отладке и таблице символов.
-
ppErrorMsgs [out]
-
Тип: ID3D10Blob**
Указатель на интерфейс ID3D10Blob , содержащий список ошибок и предупреждений, произошедших во время компиляции. Эти ошибки и предупреждения идентичны выходным данным отладки отладчика.
-
pHResult [out]
-
Тип: HRESULT*
Указатель на возвращаемое значение. Может иметь значение NULL. Если pPump не равен NULL, то pHResult должен быть допустимым расположением памяти до завершения асинхронного выполнения.
Возвращаемое значение
Тип: HRESULT
Возвращаемое значение является одним из значений, перечисленных в кодах возврата Direct3D 10.
Remarks
Требования
Требование | Значение |
---|---|
Заголовок |
|
См. также раздел