DXGI

최근 편집: 2017년 6월 10일 (토) 10:30

개요

DXGI(DirectX Graphics Infrastructure)는 Microsoft Windows Vista 이상에서 사용되는 WDDMDirectX의 핵심 특징이자 Direct3DDirect2D의 공통 구성요소이다.

Direct3D의 버전 변화에 따른 API의 대규모 변경에도 기본적인 배경 개념이 바뀌지 않는 호환성 확보를 위해 만들어졌다. Direct3D 10, Direct3D 11, Direct3D 12 모두 DXGI의 어댑터(Adapter), 교환 사슬(Swap Chain) 및 백 버퍼(Back Buffer)가 기본적으로 사용된다.

구성 요소

아래 구성 요소는 자주 사용되는 구성 요소들이며 이 외에 더 많은 요소들이 존재한다.

어댑터

쉽게 말하면 각각의 그래픽카드를 어댑터라고 칭한다. 어댑터는 Direct3D 장치 및 Direct2D 렌더 타겟 등의 생성에 사용되며, 이렇게 생성된 Direct3D 장치 및 Direct2D 렌더 타겟은 각각의 그래픽카드에서 렌더링을 수행하게 된다.

교환 사슬

교환 사슬은 프론트 버퍼와 백 버퍼의 교환에 사용되는 구조이다. WDDM 이전에 사용되던 Direct3D는 교환 사슬이 Direct3D에 포함되어 있었으나 WDDM 이후의 Direct3D는 교환 사슬이 DXGI로 분리되었다.

교환 사슬로부터 백 버퍼 객체를 가져올 수 있으며, 가져올 백 버퍼 객체는 Direct3D 10/11/12의 각각의 텍스처 객체 형식 또는 DXGI 표면 객체 형식으로 가져올 수 있다.

아웃풋 및 아웃풋 복사

다른 요소에 비해 많이 사용되는 것은 아니지만 Windows 8.0에서 업데이트 된 DXGI 1.2에 포함된 아웃풋 복사를 이용해 DXGI 화면 캡쳐 기능을 사용하기 위해 많이 사용되는 요소이다. 기존 방식에 비해 훨씬 빠른 속도로 캡쳐할 수 있다는 장점이 존재한다. 팟플레이어 등에서 지원하고 있다.

버전 경과

Windows 버전 DXGI 버전 비고
Windows Vista DXGI 1.0
Windows Vista Service Pack 1 DXGI 1.1
Windows 8 DXGI 1.2 DXGI 데스크톱 복사, DXGI 디버깅 API 지원[1]
Windows 8.1 DXGI 1.3 교환 사슬 스케일링, 저-지연 교환 사슬 출력 지원[2]
Windows 10 DXGI 1.4 Direct3D 12 관련 교환 사슬 변경점[3]
Windows 10 Threshold 2 DXGI 1.5 HDR 및 고성능 아웃풋 복사 API 지원[4]

같이 보기


출처