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


Перечисление D3D10_RESOURCE_MISC_FLAG (d3d10.h)

Определяет другие, менее распространенные параметры для ресурсов.

Синтаксис

typedef enum D3D10_RESOURCE_MISC_FLAG {
  D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x1L,
  D3D10_RESOURCE_MISC_SHARED = 0x2L,
  D3D10_RESOURCE_MISC_TEXTURECUBE = 0x4L,
  D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x10L,
  D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 0x20L
} ;

Константы

 
D3D10_RESOURCE_MISC_GENERATE_MIPS
Значение: 0x1L
Позволяет приложению вызывать ID3D10Device::GenerateMips в
ресурс текстуры. Ресурс должен быть создан
с флагами привязки, указывающими , что ресурс является целевым объектом отрисовки и ресурсом шейдера.
D3D10_RESOURCE_MISC_SHARED
Значение: 0x2L
Обеспечивает совместное использование данных ресурсов между двумя или более устройствами Direct3D. Единственными ресурсами, которые можно совместно использовать, являются двухd-текстуры без mipmapped.

Устройства WARP и REF не поддерживают общие ресурсы. Попытка создать ресурс с этим флагом на устройстве WARP или REF вызовет
Метод create возвращает код ошибки E_OUTOFMEMORY.
D3D10_RESOURCE_MISC_TEXTURECUBE
Значение: 0x4L
Позволяет приложению создавать текстуру куба из
Texture2DArray , содержащий 6 текстур.
D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX
Значение: 0x10L
Позволяет синхронизировать созданный ресурс с помощью API IDXGIKeyedMutex::AcquireSync и ReleaseSync.
Следующие API D3D10 для создания ресурсов, которые принимают параметр D3D10_RESOURCE_MISC_FLAG, были расширены для поддержки нового флага.


  • ID3D10Device1::CreateTexture1D

  • ID3D10Device1::CreateTexture2D

  • ID3D10Device1::CreateTexture3D

  • ID3D10Device1::CreateBuffer


Если какая-либо из перечисленных функций вызывается с установленным флагом D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX, возвращаемый интерфейс может иметь значение
запросил интерфейс IDXGIKeyedMutex, который реализует API AcquireSync и ReleaseSync для синхронизации доступа к поверхности.
Устройство, создающее поверхность, и любое другое устройство, открывающее поверхность (с помощью OpenSharedResource), требуется для
вызовите МЕТОД IDXGIKeyedMutex::AcquireSync перед любыми командами отрисовки на поверхность и IDXGIKeyedMutex::ReleaseSync после завершения отрисовки.

Устройства WARP и REF не поддерживают общие ресурсы. Попытка создать ресурс с этим флагом на устройстве WARP или REF вызовет
Метод create возвращает код ошибки E_OUTOFMEMORY.
D3D10_RESOURCE_MISC_GDI_COMPATIBLE
Значение: 0x20L
Позволяет использовать поверхность для взаимодействия GDI. Установка этого флага включает отрисовку на поверхности
через IDXGISurface1::GetDC.

Комментарии

Это перечисление используется в D3D10_BUFFER_DESC, D3D10_TEXTURE1D_DESC, D3D10_TEXTURE2D_DESC, D3D10_TEXTURE3D_DESC, D3DX10_IMAGE_INFO и D3DX10_IMAGE_LOAD_INFO.

Эти флаги можно объединить с помощью побитового ИЛИ.

D3D10_RESOURCE_MISC_SHARED и D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX являются взаимоисключающими флагами: в вызовах создания ресурсов можно задать один из них, но не оба одновременно.

Требования

Требование Значение
Заголовок d3d10.h

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

Перечисления ресурсов