Поделиться через


Функция D3DPreprocess (d3dcompiler.h)

Предварительная обработка некомпилированного кода HLSL.

Синтаксис

HRESULT D3DPreprocess(
  [in]            LPCVOID                pSrcData,
  [in]            SIZE_T                 SrcDataSize,
  [in, optional]  LPCSTR                 pSourceName,
  [in, optional]  const D3D_SHADER_MACRO *pDefines,
  [in, optional]  ID3DInclude            *pInclude,
  [out]           ID3DBlob               **ppCodeText,
  [out, optional] ID3DBlob               **ppErrorMsgs
);

Параметры

[in] pSrcData

Тип: LPCVOID

Указатель на некомпилированные данные шейдера; код ASCII HLSL или скомпилированный эффект.

[in] SrcDataSize

Тип: SIZE_T

Длина pSrcData.

[in, optional] pSourceName

Тип: LPCSTR

Имя файла, содержащего некомпилированный код HLSL.

[in, optional] pDefines

Тип: const D3D_SHADER_MACRO*

Массив определений макросов, завершаемых значением NULL (см . D3D_SHADER_MACRO).

[in, optional] pInclude

Тип: ID3DInclude*

Указатель на ID3DInclude для обработки включаемого файла. Установка значения NULL приведет к ошибке компиляции, если шейдер содержит #include. Вы можете передать макрос D3D_COMPILE_STANDARD_FILE_INCLUDE , который является указателем на обработчик включения по умолчанию. Этот обработчик включения по умолчанию включает файлы, относящиеся к текущему каталогу, и файлы, относящиеся к каталогу исходного исходного файла. При использовании D3D_COMPILE_STANDARD_FILE_INCLUDE необходимо указать имя исходного файла в параметре pSourceName ; компилятор наследует исходный относительный каталог от pSourceName.

#define D3D_COMPILE_STANDARD_FILE_INCLUDE ((ID3DInclude*)(UINT_PTR)1)

[out] ppCodeText

Тип: ID3DBlob**

Адрес объекта ID3DBlob , содержащего скомпилированный код.

[out, optional] ppErrorMsgs

Тип: ID3DBlob**

Указатель на id3DBlob , содержащий сообщения об ошибках компилятора, или значение NULL , если ошибок не было.

Возвращаемое значение

Тип: HRESULT

Возвращает один из кодов возврата Direct3D 11.

Комментарии

D3DPreprocess выводит директивы #line и сохраняет нумеровку строк исходных входных данных, чтобы нумеровать выходные строки можно было должным образом связаны с источником входных данных.

Требования

   
Целевая платформа Windows
Header d3dcompiler.h
Библиотека D3dcompiler_47.lib
DLL D3dcompiler_47.dll

См. также

Функции