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


функция обратного вызова PFND3D11DDI_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT (d3d10umddi.h)

Функция CreateGeometryShaderWithStreamOutput(D3D11) создает шейдер геометрии с выходными данными потока.

Синтаксис

PFND3D11DDI_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT Pfnd3d11ddiCreategeometryshaderwithstreamoutput;

void Pfnd3d11ddiCreategeometryshaderwithstreamoutput(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D11DDIARG_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT *unnamedParam2,
  D3D10DDI_HSHADER unnamedParam3,
  D3D10DDI_HRTSHADER unnamedParam4,
  const D3D10DDIARG_STAGE_IO_SIGNATURES *unnamedParam5
)
{...}

Параметры

unnamedParam1

hDevice [in]

Дескриптор устройства отображения (графический контекст).

unnamedParam2

pCreateGeometryWithShaderOutput [in]

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

unnamedParam3

hShader [in]

Дескриптор частных данных драйвера для геометрического шейдера с выходными данными потока. Драйвер возвращает размер в байтах области памяти, которую среда выполнения Microsoft Direct3D должна выделять для частных данных из вызова драйвера CalcPrivateGeometryShaderWithStreamOutput(D3D11) функции. Дескриптор — это просто указатель на область памяти, размер которой запрашивал драйвер. Драйвер использует этот регион памяти для хранения внутренних структур данных, связанных с его объектом шейдера.

unnamedParam4

hRTShader [in]

Дескриптор геометрии с выходными данными потока, которые драйвер должен использовать при вызове обратно в среду выполнения Direct3D.

unnamedParam5

pSignatures [in]

Указатель на структуру D3D10DDIARG_STAGE_IO_SIGNATURES, которая формирует подпись шейдера.

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

Никакой

Замечания

Драйвер может использовать функцию обратного вызова pfnSetErrorCb для задания кода ошибки.

Драйвер может передать E_OUTOFMEMORY (если драйвер не хватает памяти) или D3DDDIERR_DEVICEREMOVED (если устройство удалено) в вызове функции pfnSetErrorCb. Среда выполнения Direct3D определяет, что любые другие ошибки критически важны. Если драйвер передает какие-либо ошибки, включая D3DDDIERR_DEVICEREMOVED, среда выполнения Direct3D определяет, что дескриптор недопустим; Поэтому среда выполнения не вызывает функцию DestroyShader для уничтожения дескриптора, указанного параметром hShader.

Требования

Требование Ценность
минимальные поддерживаемые клиентские CreateGeometryShaderWithStreamOutput(D3D11) поддерживается начиная с операционной системы Windows 7.
целевая платформа Настольный
заголовка d3d10umddi.h (include D3d10umddi.h)

См. также

CalcPrivateGeometryShaderWithStreamOutput(D3D11)

D3D10DDIARG_STAGE_IO_SIGNATURES

D3D11DDIARG_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT

D3D11DDI_DEVICEFUNCS

DestroyShader

pfnSetErrorCb