Функция D3DXPreprocessShaderFromResource
Выполняет предварительную обработку ресурса шейдера без выполнения компиляции. Это разрешает все #defines и #includes, предоставляя автономный шейдер для последующей компиляции.
Примечание
Вместо использования этой устаревшей функции рекомендуется использовать API D3DPreprocess .
Синтаксис
HRESULT D3DXPreprocessShaderFromResource(
_In_ HMODULE hSrcModule,
_In_ LPCSTR pSrcResource,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_Out_ LPD3DXBUFFER *ppShaderText,
_Out_ LPD3DXBUFFER *ppErrorMsgs
);
Параметры
-
hSrcModule [in]
-
Тип: HMODULE
Дескриптор для модуля, который содержит ресурс шейдера. Если это значение равно NULL, будет использоваться текущий модуль.
-
pSrcResource [in]
-
Тип: LPCSTR
Строка, представляющая имя ресурса в модуле.
-
pDefines [in]
-
Тип: const D3DXMACRO*
Необязательный массив структур D3DXMACRO с завершением NULL. Это значение может иметь значение NULL.
-
pВключение [in]
-
Тип: LPD3DXINCLUDE
Необязательный указатель интерфейса ID3DXInclude, используемый для обработки директив #include. Если это значение равно NULL, #includes будет учитываться при компиляции из файла или вызвать ошибку при компиляции из ресурса или памяти.
-
ppShaderText [out]
-
Тип: LPD3DXBUFFER*
Возвращает буфер, содержащий одну большую строку, представляющую результирующий отформатированный поток маркеров.
-
ppErrorMsgs [out]
-
Тип: LPD3DXBUFFER*
Возвращает буфер, содержащий список ошибок и предупреждений, которые были обнаружены во время компиляции. Это те же сообщения, которые отображает отладчик при работе в режиме отладки. Это значение может иметь значение NULL.
Возвращаемое значение
Тип: HRESULT
Если функция выполняется успешно, возвращаемое значение будет D3D_OK. Если функция завершается сбоем, возвращаемое значение может быть одним из следующих: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA E_OUTOFMEMORY.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел