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


Метод IDirect3DDevice9::CreateVertexShader (d3d9helper.h)

Создает вершинный шейдер.

Синтаксис

HRESULT CreateVertexShader(
  [in]          const DWORD            *pFunction,
  [out, retval] IDirect3DVertexShader9 **ppShader
);

Параметры

[in] pFunction

Тип: const DWORD*

Указатель на массив маркеров, представляющий вершинный шейдер, включая все встроенные сведения об отладке и таблице символов.

[out, retval] ppShader

Тип: IDirect3DVertexShader9**

Указатель на возвращенный интерфейс вершинного шейдера (см. IDirect3DVertexShader9).

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

Тип: HRESULT

Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается ошибкой, возвращаемое значение может быть одним из следующих: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY.

Комментарии

При создании устройства IDirect3D9::CreateDevice использует флаг поведения, чтобы определить, следует ли обрабатывать вершины в аппаратном или программном обеспечении. Существует три варианта:

  • Обработайте вершины на оборудовании, задав D3DCREATE_HARDWARE_VERTEXPROCESSING.
  • Обработайте вершины в программном обеспечении, задав D3DCREATE_SOFTWARE_VERTEXPROCESSING.
  • Обработайте вершины в оборудовании или программном обеспечении, задав D3DCREATE_MIXED_VERTEXPROCESSING. Для переключения устройства в смешанном режиме между программной и аппаратной обработкой используйте IDirect3DDevice9::SetSoftwareVertexProcessing.
Пример использования D3DXCompileShader см. в разделе Пример HLSLwithoutEffects.

Требования

   
Целевая платформа Windows
Header d3d9helper.h (включая D3D9.h)
Библиотека D3D9.lib

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

IDirect3DDevice9