DirectX

최근 편집: 2017년 7월 21일 (금) 02:06
Daramkun (토론 | 기여)님의 2017년 7월 21일 (금) 02:06 판 (분류 추가)

DirectXMicrosoft의 저수준 API군의 하나로, 게임멀티미디어 등에 사용되는 COM 인터페이스 집합이다. 대한민국 내에서는 보통 다이렉트엑스로 읽거나 표기하고 있다.

역사

초창기의 Windows에서는 프로그램에서 하드웨어에 접근할 수 있는 방법을 제공하지 않아 게임 개발에 어려움을 겪었으나, DirectX 출시 후 좋은 성능을 뽑아내는 게임이 점차 출시되기 시작했다.

API의 성능을 최대한 끌어내기 위해 최근의 DirectX는 초기의 DirectX와 달리 운영체제의 저수준 코드와 밀접한 관계를 맺고 있어, 운영체제의 업데이트에 따라 DirectX의 버전도 업데이트되고 있다.

구성

DirectX의 2017년 1월 기준 구성은 아래와 같다.

이전에는 구성에 포함되어 있었으나 현재는 레거시 API나 Windows API로 빠지거나 지원을 중단한 요소는 아래와 같다.

DirectX 최종 사용자 런타임

DirectX 최종 사용자 런타임(DirectX End-User Runtime)은 설치 파일로 배포되는 형태의 DirectX 확장 라이브러리이다. 기본적인 DirectX 구성요소는 운영체제에 이미 내장되어 있으나, d3dx9_43.dll과 같은 추가적인 요소들을 사용하기 위해서 런타임을 설치한다.

보통은 설치하지 않아도 게임을 이용할 수 있으나, 확장 라이브러리를 사용한 게임의 경우 DirectX 최종 사용자 런타임의 설치가 필수적이다. 그러나 최종 사용자 런타임의 최신 버전은 2010년 6월 버전이 마지막이고, 한국 온라인 게임을 제외한 최신 게임에서는 더 이상 사용되지 않고 있다.

예를 들어, 최종 사용자 런타임에 들어가는 구성요소인 Direct3D 9 Extension(D3DX9)의 경우 텍스처 로드, 쉐이더 컴파일, 스프라이트 등의 기능이 들어가있지만, 최신 Direct3D의 경우 텍스처 로드는 Windows Imaging Components를, 쉐이더 컴파일은 Direct3D Compiler 구성요소를, 스프라이트 기능은 Direct2D를 활용할 수 있다.

같이 보기