функция обратного вызова PFND3D11DDI_SETSHADER_WITH_IFACES (d3d10umddi.h)
Функция CsSetShaderWithIfaces задает код вычислительного шейдера вместе с группой интерфейсов, чтобы все последующие операции диспетчеризации использовали этот код и эти интерфейсы.
Синтаксис
PFND3D11DDI_SETSHADER_WITH_IFACES Pfnd3d11ddiSetshaderWithIfaces;
void Pfnd3d11ddiSetshaderWithIfaces(
D3D10DDI_HDEVICE unnamedParam1,
D3D10DDI_HSHADER unnamedParam2,
[in] UINT NumClassInstances,
const UINT *unnamedParam4,
const D3D11DDIARG_POINTERDATA *unnamedParam5
)
{...}
Параметры
unnamedParam1
hDevice [in]
Дескриптор устройства отображения (графический контекст).
unnamedParam2
hShader [in]
Дескриптор объекта кода вычислительного шейдера.
[in] NumClassInstances
Количество экземпляров класса для реализаций интерфейсов.
unnamedParam4
pPointerData [in]
Массив структур D3D11DDIARG_POINTERDATA . Каждая структура описывает расположение данных, на которые ссылается экземпляр класса, назначенный реализации интерфейса. Количество элементов в массиве определяется параметром NumClassInstances .
unnamedParam5
pIfaces [in]
Массив идентификаторов таблицы функций. Каждый идентификатор соответствует экземпляру класса, назначенному реализации интерфейса. Количество элементов в массиве определяется параметром NumClassInstances .
Возвращаемое значение
None
Remarks
Драйвер может использовать функцию обратного вызова pfnSetErrorCb , чтобы задать код ошибки.
Каждый экземпляр класса для реализации интерфейса содержит следующие сведения:
- Код, связанный с этим экземпляром класса
- Расположение данных, используемых экземпляром этого класса.
Драйвер может передать E_OUTOFMEMORY (если у драйвера заканчивается память) или D3DDDIERR_DEVICEREMOVED (если устройство удалено) в вызове функции pfnSetErrorCb . Среда выполнения Direct3D определяет, что любые другие ошибки являются критическими. Если драйвер передает ошибки, включая D3DDDIERR_DEVICEREMOVED, среда выполнения Direct3D определяет, что дескриптор недопустим; Поэтому среда выполнения не вызывает функцию DestroyShader для уничтожения дескриптора, указанного параметром hShader .
Функция GsSetShaderWithIfaces задает код геометрического шейдера вместе с группой интерфейсов, чтобы все последующие операции рисования использовали этот код и эти интерфейсы.
Функция PsSetShaderWithIfaces задает код пиксельного шейдера вместе с группой интерфейсов, чтобы все последующие операции рисования использовали этот код и эти интерфейсы.
Функция DsSetShaderWithIfaces задает код шейдера предметной области вместе с группой интерфейсов, чтобы все последующие операции рисования использовали этот код и эти интерфейсы.
Функция HsSetShaderWithIfaces задает код шейдера корпуса вместе с группой интерфейсов, чтобы все последующие операции рисования использовали этот код и эти интерфейсы.
Функция VsSetShaderWithIfaces задает код вершинного шейдера вместе с группой интерфейсов, чтобы все последующие операции рисования использовали этот код и эти интерфейсы.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | CsSetShaderWithIfaces поддерживается начиная с операционной системы Windows 7. |
Целевая платформа | Персональный компьютер |
Верхняя часть | d3d10umddi.h (включая D3d10umddi.h) |