DXGI_SWAP_CHAIN_FLAG 열거형(dxgi.h)

스왑 체인 동작에 대한 옵션입니다.

Syntax

typedef enum DXGI_SWAP_CHAIN_FLAG {
  DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1,
  DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2,
  DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4,
  DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8,
  DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16,
  DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32,
  DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64,
  DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128,
  DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256,
  DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512,
  DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024,
  DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048,
  DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096
} ;

상수

 
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED
값: 1
자동 이미지 회전을 끄려면 이 플래그를 설정합니다. 즉, 전면 버퍼의 내용을 모니터로 전송할 때 회전을 수행하지 않습니다.
애플리케이션이 회전을 처리해야 할 때 대역폭 페널티를 방지하려면 이 플래그를 사용합니다. 이 옵션은 전체 화면 모드에서만 유효합니다.
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH
값: 2
IDXGISwapChain::ResizeTarget을 호출하여 애플리케이션이 모드를 전환할 수 있도록 하려면 이 플래그를 설정합니다.
창에서 전체 화면 모드로 전환하면 디스플레이 모드(또는 모니터 해상도)가 애플리케이션 창의 차원과 일치하도록 변경됩니다.
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE
값: 4
스왑 체인 또는 표면에서 GDI를 사용하여 애플리케이션을 렌더링할 수 있도록 하려면 이 플래그를 설정합니다.
이렇게 하면 애플리케이션이 0번째 백 버퍼 또는 표면에서 IDXGISurface1::GetDC 를 호출할 수 있습니다.

Direct3D 12에는 이 플래그를 적용할 수 없습니다.
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT
값: 8
스왑 체인에 보호된 콘텐츠가 포함될 수 있음을 나타내려면 이 플래그를 설정합니다. 따라서 운영 체제는 드라이버 및 하드웨어 보호가 사용되는 경우에만 스왑 체인 만들기를 지원합니다. 드라이버와 하드웨어가 콘텐츠 보호를 지원하지 않는 경우 스왑 체인에 대한 리소스를 만들기 위한 호출이 실패합니다.

Direct3D 11: 이 열거형 값은 Windows 8 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER
값: 16
이 플래그를 설정하여 스왑 체인 내에서 만든 공유 리소스는 공유 표면에 대한 액세스를 제한하는 드라이버 메커니즘을 사용하여 보호되어야 함을 나타냅니다.

Direct3D 11: 이 열거형 값은 Windows 8 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY
값: 32
표시된 콘텐츠를 로컬 디스플레이로 제한하려면 이 플래그를 설정합니다. 따라서 제공된 콘텐츠는 원격 액세스를 통해 또는 데스크톱 중복 API를 통해 액세스할 수 없습니다.

이 플래그는 Windows의 창 콘텐츠 보호 기능을 지원합니다. 애플리케이션은 이 플래그를 사용하여 특정 공용 운영 체제 기능 및 API 집합을 통해 자체 화면 창 콘텐츠가 캡처되거나 복사되지 않도록 보호할 수 있습니다.

다른 프로세스가 HWND를 만든 창(HWND 또는 IWindow) 스왑 체인과 함께 이 플래그를 사용하는 경우 HWND의 소유자는 IDXGISwapChain::P resent 또는 IDXGISwapChain1::Present1에 대한 호출을 허용하기 위해 SetWindowDisplayAffinity 함수를 적절하게 사용해야 합니다.


Direct3D 11: 이 열거형 값은 Windows 8 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT
값: 64
프레임이 계속 표시되는 동안 렌더링이 시작되지 않도록 하려면 이 플래그를 설정하여 사용할 수 있는 대기 가능한 개체를 만듭니다. 이 플래그를 사용하는 경우 IDXGIDevice1::SetMaximumFrameLatency 대신 IDXGISwapChain2::SetMaximumFrameLatency API를 사용하여 스왑 체인의 대기 시간을 설정해야 합니다.

렌더링 API가 Direct3D 12가 아닌 한 이 플래그는 전체 화면 모드에서 지원되지 않습니다.

참고 이 열거형 값은 Windows 8.1 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER
값: 128
다중 평면 렌더링을 위해 포그라운드 계층에 스왑 체인을 만들려면 이 플래그를 설정합니다. 이 플래그는 CreateSwapChainForCoreWindow를 사용하여 만든 CoreWindow 스왑 체인에서만 사용할 수 있습니다. IDXGIOutput2::SupportsOverlays가 오버레이에 대한 하드웨어 지원을 사용할 수 없음을 나타내는 경우 앱은 포그라운드 스왑 체인을 만들지 않아야 합니다.

IDXGISwapChain::ResizeBuffers를 사용하여 이 플래그를 추가하거나 제거할 수 없습니다.

참고 이 열거형 값은 Windows 8.1 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO
값: 256
전체 화면 비디오에 대한 스왑 체인을 만들려면 이 플래그를 설정합니다.

참고 이 열거형 값은 Windows 8.1 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO
값: 512
이 플래그를 설정하여 YUV 비디오에 대한 스왑 체인을 만듭니다.

참고 이 열거형 값은 Windows 8.1 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED
값: 1024
모든 기본 리소스를 하드웨어로 보호할 수 있도록 스왑 체인을 만들어야 했음을 나타냅니다. 하드웨어 콘텐츠 보호가 지원되지 않으면 리소스 만들기가 실패합니다.

이 플래그에는 다음과 같은 제한 사항이 있습니다.


  • 이 플래그는 스왑 효과 DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL 사용할 수 있습니다.


참고 이 플래그를 사용하여 스왑 체인을 만들면 기본 할당에 대해 하드웨어 보호가 사용하도록 설정된다는 보장이 자동으로 보장되지 않습니다. 일부 구현에서는 보호를 보장하기 전에 DRM 구성 요소를 먼저 초기화해야 합니다.

 

참고 이 열거형 값은 Windows 10 부터 지원됩니다.
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING
값: 2048
리핑 지원은 애플리케이션이 전체 화면 테두리 없는 창에 연결된 스왑 체인을 표시할 때 가변 새로 고침 속도를 지원하는 디스플레이가 제대로 작동하도록 설정하기 위한 요구 사항입니다. Win32 앱은 SetFullscreenState(TRUE)를 호출하여 이미 전체 화면 전용 모드에서 찢어질 수 있지만 Win32 개발자에게 권장되는 방법은 이 눈물 플래그를 대신 사용하는 것입니다. 이 플래그를 사용하려면 DXGI_SWAP_EFFECT_FLIP_* 스왑 효과를 사용해야 합니다.

이 기능의 하드웨어 지원을 검사 IDXGIFactory5::CheckFeatureSupport를 참조하세요. 사용량 정보는 IDXGISwapChain::P resentDXGI_PRESENT 플래그를 참조하세요.

참고

IDXGISwapChain::ResizeBuffers 를 사용하여 이 플래그를 추가하거나 제거할 수 없습니다.

DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS
값: 4096

설명

이 열거형은 DXGI_SWAP_CHAIN_DESC 구조체 및 IDXGISwapChain::ResizeTarget 메서드에서 사용됩니다.

이 열거형은 DXGI_SWAP_CHAIN_DESC1 구조체에서도 사용됩니다.

IDXGIFactory::CreateSwapChain 메서드를 사용하여 전체 화면 모드에서 만든 스왑 체인에 대한 DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY 설정할 필요가 없습니다. 이러한 스왑 체인은 이미 DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY 설정된 것처럼 작동하기 때문입니다. 즉, 제공된 콘텐츠는 원격 액세스 또는 데스크톱 중복 API를 통해 액세스할 수 없습니다.

IDXGIFactory2::CreateSwapChainForHwnd, IDXGIFactory2::CreateSwapChainForCoreWindowIDXGIFactory2::CreateSwapChainForComposition 메서드를 사용하여 만든 스왑 체인은 DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY 설정되지 않고 DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY 설정된 경우 보호되는 경우 보호되지 않습니다. 스왑 체인이 보호되면 화면 스크래핑이 방지되고 전체 화면 모드에서는 데스크톱 중복 API를 통해 제공된 콘텐츠에 액세스할 수 없습니다.

IDXGISwapChain::ResizeBuffers를 호출하여 스왑 체인의 백 버퍼를 변경하는 경우 모든 DXGI_SWAP_CHAIN_FLAG 플래그를 다시 설정하거나 변경할 수 있습니다.

요구 사항

요구 사항
헤더 dxgi.h

추가 정보

DXGI 열거형