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

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

Синтаксис

PFND3D10DDI_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT Pfnd3d10ddiCreategeometryshaderwithstreamoutput;

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

Параметры

unnamedParam1

hDevice [in]

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

unnamedParam2

pCreateGeometryWithShaderOutput [in]

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

unnamedParam3

hShader [in]

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

unnamedParam4

hRTShader [in]

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

unnamedParam5

pSignatures [in]

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

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

None

Remarks

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

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

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista и более поздних версиях операционных систем Windows.
Целевая платформа Персональный компьютер
Верхняя часть d3d10umddi.h (включая D3d10umddi.h)

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

CalcPrivateGeometryShaderWithStreamOutput

D3D10DDIARG_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT

D3D10DDIARG_STAGE_IO_SIGNATURES

D3D10DDI_DEVICEFUNCS

DestroyShader

pfnSetErrorCb