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


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

pfnSubmitCommandCb используется для отправки буферов команд в контекстах, поддерживающих виртуальную адресацию графического модуля обработки (GPU). Эти контексты создают команды непосредственно из пользовательского режима, управляют собственным пулом буферов команд и не используют список расположений выделения или исправлений.

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

Хотя драйвер пользовательского режима не создает расположения исправлений, он по-прежнему должен создать список первичных элементов, в которые записываются. Диспетчер памяти видео использует список выделения, чтобы определить, на какие первичные выделения ссылаются для записи каждого буфера команд. Эти сведения используются для синхронизации отрисовки с основными операциями Flip.

Некоторые драйверы режима ядра нуждаются в информации из драйвера пользовательского режима по отправке определенного буфера прямого доступа к памяти (DMA) на gpu. В модели драйвера windows Display Driver Model (WDDM) 1.0 эта информация была отправлена драйвером пользовательского режима в драйвер режима ядра через буфер команд. Так как буфер DMA создается непосредственно драйвером пользовательского режима и отправляется в GPU без изменений, они больше не могут использоваться для отправки информации драйверу ядра. В результате мы добавляем явный буфер данных частного драйвера для отправки вместе с отправкой. Обратите внимание, что эти данные частного драйвера являются однонаправленными, и драйвер режима ядра не может возвращать сведения драйверу пользовательского режима через этот буфер.

Синтаксис

PFND3DDDI_SUBMITCOMMANDCB Pfnd3dddiSubmitcommandcb;

HRESULT Pfnd3dddiSubmitcommandcb(
  HANDLE hDevice,
  const D3DDDICB_SUBMITCOMMAND *unnamedParam2
)
{...}

Параметры

hDevice

Дескриптор устройства отображения.

unnamedParam2

pData [in]

Указатель на структуру D3DDDICB_SUBMITCOMMAND, описывающую операцию.

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

Если эта функция обратного вызова успешно выполнена, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10
минимальный поддерживаемый сервер Windows Server 2016
целевая платформа Настольный
заголовка d3dumddi.h (include D3dumddi.h)

См. также

D3DDDICB_SUBMITCOMMAND

pfnRenderCb