функция обратного вызова PFND3D10DDI_CREATERESOURCE (d3d10umddi.h)
Создает ресурс.
Синтаксис
PFND3D10DDI_CREATERESOURCE Pfnd3d10ddiCreateresource;
void Pfnd3d10ddiCreateresource(
D3D10DDI_HDEVICE unnamedParam1,
const D3D10DDIARG_CREATERESOURCE *unnamedParam2,
D3D10DDI_HRESOURCE unnamedParam3,
D3D10DDI_HRTRESOURCE unnamedParam4
)
{...}
Параметры
unnamedParam1
hDevice [in]
Дескриптор устройства отображения (графический контекст).
unnamedParam2
pCreateResource [in]
Указатель на структуру D3D10DDIARG_CREATERESOURCE , описывающую параметры, которые драйвер отображения пользовательского режима использует для создания ресурса.
unnamedParam3
hResource [in]
Дескриптор личных данных драйвера для ресурса.
unnamedParam4
hRTResource [in]
Дескриптор ресурса, который драйвер должен использовать при каждом вызове обратно в среду выполнения Direct3D.
Возвращаемое значение
None
Remarks
Драйвер может использовать функцию обратного вызова pfnSetErrorCb , чтобы задать код ошибки.
Возможно, у драйвера не хватает памяти. Таким образом, драйвер может передать E_OUTOFMEMORY или D3DDDIERR_DEVICEREMOVED в вызове функции pfnSetErrorCb . Драйвер также может передавать DXGI_DDI_ERR_UNSUPPORTED в вызове pfnSetErrorCb. Дополнительные сведения о передаче DXGI_DDI_ERR_UNSUPPORTED см. в разделе Примечания на странице справочника по BltDXGI . Среда выполнения Direct3D определит, что любые другие ошибки являются критическими. Если драйвер передает ошибки, в том числе D3DDDIERR_DEVICEREMOVED, среда выполнения Direct3D определит, что дескриптор недопустим; Поэтому среда выполнения не будет вызывать функцию DestroyResource(D3D10) для уничтожения дескриптора, указанного параметром hResource .
Среда выполнения проверяет все параметры на соответствие параметрам, отправленным приложением для создания ресурса. Поэтому драйвер не должен получать недопустимые сочетания.
Если приложению не требуется, чтобы содержимое ресурса сохранялось в презентациях, среда выполнения установит флаг D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT перечисления D3D10_DDI_RESOURCE_MISC_FLAG в элементе MiscFlagsструктуры D3D10DDIARG_CREATERESOURCE , на которую указывает параметр pCreateResource . Презентация происходит при вызове функции PresentDXGI или BltDXGI драйвера (с флагом Present , установленным в структуре DXGI_DDI_ARG_BLT_FLAGS ). Среда выполнения использует флаг D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT для создания обратных буферов цепочки буферов, когда приложение использует значение DXGI_SWAP_EFFECT_DISCARD для запроса цепочек буферов.
Создание обратного стерео буфера
Начиная с Windows 8, если драйвер должен создать обратный буфер стереосистемы, он должен задать элементы структуры D3D10DDIARG_CREATERESOURCE, на которую указывает pCreateResource, следующим образом:- Задайте для элемента ArraySize значение 2.
- Задайте значение флага D3D10_DDI_BIND_PRESENT в элементе BindFlags .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Целевая платформа | Персональный компьютер |
Верхняя часть | d3d10umddi.h (включая D3d10umddi.h) |