D3D11_RESOURCE_MISC_FLAG 열거형(d3d11.h)
리소스에 대한 옵션을 식별합니다.
Syntax
typedef enum D3D11_RESOURCE_MISC_FLAG {
D3D11_RESOURCE_MISC_GENERATE_MIPS = 0x1L,
D3D11_RESOURCE_MISC_SHARED = 0x2L,
D3D11_RESOURCE_MISC_TEXTURECUBE = 0x4L,
D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS = 0x10L,
D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS = 0x20L,
D3D11_RESOURCE_MISC_BUFFER_STRUCTURED = 0x40L,
D3D11_RESOURCE_MISC_RESOURCE_CLAMP = 0x80L,
D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x100L,
D3D11_RESOURCE_MISC_GDI_COMPATIBLE = 0x200L,
D3D11_RESOURCE_MISC_SHARED_NTHANDLE = 0x800L,
D3D11_RESOURCE_MISC_RESTRICTED_CONTENT = 0x1000L,
D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE = 0x2000L,
D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER = 0x4000L,
D3D11_RESOURCE_MISC_GUARDED = 0x8000L,
D3D11_RESOURCE_MISC_TILE_POOL = 0x20000L,
D3D11_RESOURCE_MISC_TILED = 0x40000L,
D3D11_RESOURCE_MISC_HW_PROTECTED = 0x80000L,
D3D11_RESOURCE_MISC_SHARED_DISPLAYABLE,
D3D11_RESOURCE_MISC_SHARED_EXCLUSIVE_WRITER
} ;
상수
D3D11_RESOURCE_MISC_GENERATE_MIPS 값: 0x1L 텍스처 리소스에서 ID3D11DeviceContext::GenerateMips 를 사용하여 MIP 맵 생성을 사용하도록 설정합니다. 리소스가 렌더링 대상 및 셰이더 리소스임을 지정하는 바인딩 플래그 를 사용하여 리소스를 만들어야 합니다. |
D3D11_RESOURCE_MISC_SHARED 값: 0x2L 둘 이상의 Direct3D 디바이스 간에 리소스 데이터 공유를 사용하도록 설정합니다. 공유할 수 있는 유일한 리소스는 2D 비 mipmapped 텍스처입니다. D3D11_RESOURCE_MISC_SHARED 및 D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX 상호 배타적입니다. WARP 및 REF 디바이스는 공유 리소스를 지원하지 않습니다. WARP 또는 REF 디바이스에서 이 플래그를 사용하여 리소스를 만들려고 하면 create 메서드가 E_OUTOFMEMORY 오류 코드를 반환합니다.
참고 Windows 8 WARP 디바이스는 공유 리소스를 완벽하게 지원합니다.
참고 Windows 8 시작하려면 D3D11_RESOURCE_MISC_SHARED_NTHANDLE 플래그와 D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX 플래그의 조합을 사용하여 둘 이상의 Direct3D 디바이스 간에 리소스 데이터 공유를 사용하도록 설정하는 것이 좋습니다. |
D3D11_RESOURCE_MISC_TEXTURECUBE 값: 0x4L 리소스를 6개의 텍스처가 포함된 Texture2DArray 에서 만든 큐브 텍스처로 설정합니다. |
D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS 값: 0x10L GPU에서 생성된 콘텐츠를 인스턴스화할 수 있습니다. |
D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS 값: 0x20L 리소스를 바이트 주소 버퍼로 사용하도록 설정합니다. |
D3D11_RESOURCE_MISC_BUFFER_STRUCTURED 값: 0x40L 리소스를 구조화된 버퍼로 사용하도록 설정합니다. |
D3D11_RESOURCE_MISC_RESOURCE_CLAMP 값: 0x80L ID3D11DeviceContext::SetResourceMinLOD에서 사용할 MIP 맵 클램핑이 있는 리소스를 사용하도록 설정합니다. |
D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX 값: 0x100L IDXGIKeyedMutex::AcquireSync 및 를 사용하여 리소스를 동기화할 수 있도록 합니다. IDXGIKeyedMutex::ReleaseSync Api. D3D11_RESOURCE_MISC_FLAG 매개 변수를 사용하는 다음 Direct3D 11 리소스 만들기 API가 새 플래그를 지원하도록 확장되었습니다.
D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX 플래그 집합을 사용하여 이러한 메서드를 호출하는 경우 반환된 인터페이스는 IDXGIKeyedMutex 인터페이스를 지원합니다. IUnknown::QueryInterface를 사용하여 리소스에서 IDXGIKeyedMutex 인터페이스에 대한 포인터를 검색할 수 있습니다. IDXGIKeyedMutex 인터페이스는 IDXGIKeyedMutex::AcquireSync 및 IDXGIKeyedMutex::ReleaseSync API를 구현하여 표면에 대한 액세스를 동기화합니다. Surface를 만드는 디바이스와 OpenSharedResource를 사용하여 표면을 여는 다른 장치는 화면에 렌더링 명령을 실행하기 전에 IDXGIKeyedMutex::AcquireSync 를 호출해야 합니다. 해당 디바이스가 렌더링을 완료하면 IDXGIKeyedMutex::ReleaseSync를 호출해야 합니다. D3D11_RESOURCE_MISC_SHARED 및 D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX 상호 배타적입니다. WARP 및 REF 디바이스는 공유 리소스를 지원하지 않습니다. WARP 또는 REF 디바이스에서 이 플래그를 사용하여 리소스를 만들려고 하면 create 메서드가 E_OUTOFMEMORY 오류 코드를 반환합니다.
참고 Windows 8 WARP 디바이스는 공유 리소스를 완벽하게 지원합니다. |
D3D11_RESOURCE_MISC_GDI_COMPATIBLE 값: 0x200L GDI와 호환되는 리소스를 사용하도록 설정합니다. GDI와 함께 사용하는 표면에서 D3D11_RESOURCE_MISC_GDI_COMPATIBLE 플래그를 설정해야 합니다. D3D11_RESOURCE_MISC_GDI_COMPATIBLE 플래그를 설정하면 IDXGISurface1::GetDC를 통해 표면에서 GDI 렌더링을 수행할 수 있습니다. 텍스처를 만들거나 스왑 체인에서 해당 텍스처를 사용할 때 D3D11_RESOURCE_MISC_GDI_COMPATIBLE 사용하기 위한 다음 프로그래밍 팁을 고려합니다.
|
D3D11_RESOURCE_MISC_SHARED_NTHANDLE 값: 0x800L 공유 리소스를 만들 때 NT HANDLE 값을 사용하도록 설정하려면 이 플래그를 설정합니다. 이 플래그를 사용하도록 설정하면 기존 HANDLE 값의 사용이 더 이상 사용되지 않습니다. 값은 런타임이 공유 리소스에 NT HANDLE 값을 사용하도록 지시하는 새 공유 리소스 유형을 지정합니다. 그런 다음 런타임은 공유 리소스가 지정된 기능 수준의 모든 하드웨어에서 작동하는지 확인해야 합니다. 이 플래그를 설정하지 않으면 런타임은 공유 리소스 매개 변수(즉, 형식, 플래그, 사용량 등)의 유효성을 엄격하게 검사하지 않습니다. 런타임이 공유 리소스 매개 변수의 유효성을 검사하지 않으면 대부분의 Direct3D API 동작이 정의되지 않을 수 있으며 드라이버마다 다를 수 있습니다. Direct3D 11 이하: 이 값은 Direct3D 11.1까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_RESTRICTED_CONTENT 값: 0x1000L 리소스에 보호된 콘텐츠가 포함될 수 있음을 나타내려면 이 플래그를 설정합니다. 따라서 운영 체제는 드라이버와 하드웨어가 콘텐츠 보호를 지원하는 경우에만 리소스를 사용해야 합니다. 드라이버와 하드웨어가 콘텐츠 보호를 지원하지 않고 이 플래그를 사용하여 리소스를 만들려고 하면 리소스 만들기가 실패합니다. Direct3D 11: 이 값은 Direct3D 11.1까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE 값: 0x2000L 운영 체제가 공유 화면에 대한 액세스를 제한함을 나타내려면 이 플래그를 설정합니다. 이 플래그를 D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER 플래그와 함께 사용할 수 있으며 공유 화면을 만들 때만 사용할 수 있습니다. 공유 리소스를 만드는 프로세스는 항상 공유 리소스를 열 수 있습니다. Direct3D 11: 이 값은 Direct3D 11.1까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER 값: 0x4000L 드라이버가 공유 화면에 대한 액세스를 제한함을 나타내려면 이 플래그를 설정합니다. 이 플래그는 D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE 플래그와 함께 사용할 수 있으며 공유 화면을 만들 때만 사용할 수 있습니다. 공유 리소스를 만드는 프로세스는 항상 공유 리소스를 열 수 있습니다. Direct3D 11: 이 값은 Direct3D 11.1까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_GUARDED 값: 0x8000L 리소스가 보호됨을 나타내려면 이 플래그를 설정합니다. 이러한 리소스는 IDCompositionSurface::BeginDraw(DirectComposition) 및 ISurfaceImageSourceNative::BeginDraw(Windows 런타임) API에서 반환됩니다. 이러한 API의 경우 업데이트할 표면에 ROI(관심 영역)를 제공합니다. 이 표면은 MRT(여러 렌더링 대상)와 호환되지 않습니다. 보호된 리소스는 이전 API 중 하나와 관련된 지역에 대한 모든 쓰기를 자동으로 제한합니다. 또한 리소스는 다음과 같은 제한 사항으로 ROI에 대한 액세스를 적용합니다.
Direct3D 11: 이 값은 Direct3D 11.1까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_TILE_POOL 값: 0x20000L 리소스가 타일 풀임을 나타내려면 이 플래그를 설정합니다. Direct3D 11: 이 값은 Direct3D 11.2까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_TILED 값: 0x40000L 리소스가 타일식 리소스임을 나타내려면 이 플래그를 설정합니다. Direct3D 11: 이 값은 Direct3D 11.2까지 지원되지 않습니다. |
D3D11_RESOURCE_MISC_HW_PROTECTED 값: 0x80000L 하드웨어로 보호되도록 리소스를 만들어야 함을 나타내려면 이 플래그를 설정합니다. 하드웨어 콘텐츠 보호가 지원되지 않으면 리소스 만들기가 실패합니다. 이 플래그에는 다음과 같은 제한 사항이 있습니다.
참고 이 플래그를 사용하여 텍스처를 만들면 기본 할당에 대해 하드웨어 보호가 사용하도록 설정되지 않습니다. 일부 구현에서는 보호를 보장하기 전에 DRM 구성 요소를 먼저 초기화해야 합니다. 참고 이 열거형 값은 Windows 10 부터 지원됩니다. |
D3D11_RESOURCE_MISC_SHARED_DISPLAYABLE 리소스가 표시 가능한 표면 기능을 사용할 수 있도록 합니다 . D3D11_RESOURCE_MISC_SHARED 및D3D11_RESOURCE_MISC_SHARED_NTHANDLE 함께 D3D11_RESOURCE_MISC_SHARED_DISPLAYABLE 사용해야 합니다. |
D3D11_RESOURCE_MISC_SHARED_EXCLUSIVE_WRITER TBD |
설명
이 열거형은 D3D11_BUFFER_DESC, D3D11_TEXTURE1D_DESC, D3D11_TEXTURE2D_DESC, D3D11_TEXTURE3D_DESC 사용됩니다.
이러한 플래그는 비트 OR로 결합할 수 있습니다.
D3D11_CPU_ACCESS 플래그를 사용하여 리소스를 만들 때는 D3D11_RESOURCE_MISC_FLAG 사용할 수 없습니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | d3d11.h |