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


Метод ID3DInclude::Open (d3dcommon.h)

Реализованный пользователем метод для открытия и чтения содержимого файла #include шейдера.

Синтаксис

HRESULT Open(
  D3D_INCLUDE_TYPE IncludeType,
  LPCSTR           pFileName,
  LPCVOID          pParentData,
  LPCVOID          *ppData,
  UINT             *pBytes
);

Параметры

IncludeType

Тип: D3D_INCLUDE_TYPE

Значение типа D3D_INCLUDE_TYPE, указывающее расположение файла #include.

pFileName

Тип: LPCSTR

Имя файла #include.

pParentData

Тип: LPCVOID

Указатель на контейнер, содержащий файл #include. Компилятор может передать значение NULL в pParentData. Дополнительные сведения см. в разделе "Поиск включаемого файла" статьи Компиляция эффекта (Direct3D 11).

ppData

Тип: LPCVOID*

Указатель на буфер, содержащий директивы include. Этот указатель остается действительным до вызоваID3DInclude::Close.

pBytes

Тип: UINT*

Указатель на количество байтов, возвращаемых open в ppData.

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

Тип: HRESULT

Реализованный пользователем метод должен возвращать S_OK. Если при чтении файла #include не удается открыть, интерфейс прикладного программирования (API), вызвавшего вызов Open , завершается ошибкой. Этот сбой может произойти в одной из следующих ситуаций:

  • Шейдер HLSL завершается ошибкой одной из функций D3D10CompileShader*** .
  • Эффект завершается ошибкой одной из функций D3D10CreateEffect*** .

Требования

Требование Значение
Целевая платформа Windows
Header d3dcommon.h
Библиотека D3DCompiler.lib
DLL D3DCompiler_47.dll

См. также раздел

ID3DInclude

ID3DInclude::Close