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


структура D3D11DDIARG_CALCPRIVATEDEFERREDCONTEXTSIZE (d3d10umddi.h)

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

Синтаксис

typedef struct D3D11DDIARG_CALCPRIVATEDEFERREDCONTEXTSIZE {
  [in] UINT Flags;
} D3D11DDIARG_CALCPRIVATEDEFERREDCONTEXTSIZE;

Члены

[in] Flags

Допустимое побитовое ИЛИ значений флагов, определяющих способ создания устройства отрисовки. Среда выполнения Direct3D поддерживает следующие флаги:

D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION (0x1)

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

D3D11DDI_CREATEDEVICE_FLAG_SINGLETHREADED (0x10)

Этот флаг сообщает драйверу отображения пользовательского режима, что приложение является однопоточным. Среда выполнения Direct3D версии 11 позволяет нескольким потокам приложения входить в драйвер, если драйвер разрешает этот режим работы. Однако не все приложения могут запускать несколько потоков. Если этот флаг установлен, драйвер не ожидает, что несколько потоков будут входить в него и выполняться одновременно. Драйвер может избежать синхронизации при наличии этого флага.

Флаг, заданный в маске 0xE элемента Flags

Этот флаг представляет уровень объемного конвейера, который драйвер должен поддерживать для устройства отображения. Драйвер использует следующие константы и макросы для извлечения одного из значений из перечисления D3D11DDI_3DPIPELINELEVEL , которые представляют уровень трехмерного конвейера для поддержки. Значение в элементе Flags форматируется так же, как и элемент Capsструктуры D3D11DDI_3DPIPELINESUPPORT_CAPS .

#define D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT (0x1)
#define D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_MASK (0x7 << D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT)
#define D3D11DDI_EXTRACT_3DPIPELINELEVEL_FROM_FLAGS( Flags ) \
    ((D3D11DDI_3DPIPELINELEVEL)(((Flags) & D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_MASK) >> \
    D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT))

Требования

Требование Значение
Минимальная версия клиента D3D11DDIARG_CALCPRIVATEDEFERREDCONTEXTSIZE поддерживается начиная с операционной системы Windows 7.
Верхняя часть d3d10umddi.h (включая D3d10umddi.h)

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

D3D11DDI_3DPIPELINELEVEL

D3D11DDI_3DPIPELINESUPPORT_CAPS