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


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

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

Синтаксис

PFND3D11_1DDI_ASSIGNDEBUGBINARY Pfnd3d111DdiAssigndebugbinary;

void Pfnd3d111DdiAssigndebugbinary(
       D3D10DDI_HDEVICE unnamedParam1,
       D3D10DDI_HSHADER unnamedParam2,
       UINT uBinarySize,
  [in] const VOID *pBinary
)
{...}

Параметры

unnamedParam1

hDevice [in]

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

unnamedParam2

hShader [in]

Дескриптор частных данных драйвера для объекта шейдера.

uBinarySize

Размер в байтах полного двоичного шейдера.

[in] pBinary

Указатель на полный двоичный файл шейдера.

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

Никакой

Замечания

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

AssignDebugBinary вызывается только в том случае, если все следующие значения имеют значение true:

  • Устройство можно отладить.
  • Драйвер отображения в пользовательском режиме задал D3D11_1DDI_D3D11_OPTIONS_DATA.Назначьте флаг AssignDebugBinarySupport, чтобы TRUE.
  • Функция создания шейдера вызывается CreateXxxXxx, возвращает дескриптор шейдеру.
Драйвер не должен столкнуться с ошибкой, за исключением D3DDDIERR_DEVICEREMOVED. Таким образом, если драйвер передает любую ошибку, за исключением D3DDDIERR_DEVICEREMOVED, в вызове функции pfnSetErrorCb, среда выполнения Microsoft Direct3D определит, что эта ошибка является критической. Даже если устройство было удалено, драйвер не требуется возвращать D3DDDIERR_DEVICEREMOVED; Однако если удаление устройства вмешалось в операцию AssignDebugBinary (что обычно не должно произойти), драйвер может вернуть D3DDDIERR_DEVICEREMOVED.

Требования

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

См. также

D3D11_1DDI_D3D11_OPTIONS_DATA

pfnSetErrorCb