Microsoft DirectX
(
마이크로소프트 다이렉트엑스
)는
멀티미디어
, 特히
게임
프로그래밍
에서
마이크로소프트
플랫폼
에서 作業을 위한
API
의 集合이다. 다이렉트엑스는 마이크로소프트
윈도우
,
世가
,
드림캐스트
, 마이크로소프트
엑스박스
및
엑스박스 360
을 위한
비디오 게임
開發에 널리 쓰인다.
다이렉트엑스는 또한 게임뿐 아니라 最近에 나온 3次元
그래픽 하드웨어
를 使用하여 높은 品質의 3次元 그래픽을 빠르게 렌더링할 수 있기 때문에
소프트웨어
業界 全般에서 使用되기도 한다.
다이렉트엑스 런타임과 소프트웨어 開發킷은 無料이지만 改造는 할 수 없는
클로즈드 소스
(
오픈 소스
의 反對 槪念) 소프트웨어이다. 다이렉트엑스 런타임은 元來 컴퓨터 게임 開發者들에게만 公開되었으나, 最近에는 基本的으로 윈도우에 包含되어 있다. 上位 버전으로 업데이트하고 싶을 境遇 마이크로소프트의 公式 홈페이지를 통해 設置할 수 있다. 設置 時, Bing 바 設置가 基本的으로 체크되어 있으니 注意하자.
[3]
Direct3D 9Ex, Direct3D 10은
윈도우 비스타
以上, Direct3D 11은
윈도우 비스타
SP2 또는
윈도우 7
以上, Direct3D 12는
윈도우 10
에서만 使用할 수 있다. 그 까닭은 이러한 새로운 버전들은 윈도우 비스타에 導入되었던 새로운
윈도우 디스플레이 드라이버 모델
이 있어야 動作하기 때문이다. 그래서 DirectX 條件에 맞더라도 드라이버가
윈도우 디스플레이 드라이버 모델
을 支援하지 않으면 使用할 수 없다. 새로운 비스타/WDDM 그래픽스 構造에는
데스크톱 窓 管理者
와 같이, 그래픽 하드웨어를 여러 個의 應用 프로그램과 서비스에 假想化할 수 있게 도와 주는 새로운 비디오 메모리 管理者를 包含하고 있다.
開發 歷史
[
編輯
]
1994年 말, 마이크로소프트는 다음
運營 體制
人
윈도우 95
를 出市할 準備가 되었다. 마이크로소프트의 3名의 職員 Craig Eisler, Alex St. John, Eric Engstrom은
프로그래머
들이 마이크로소프트의 以前 運營 體制인
MS-DOS
를 더 나은 플랫폼으로 보는 傾向이 있었기 때문에 걱정이 있었다. MS-DOS가 게임 프로그래밍을 위한 더 나은 플랫폼으로 비쳐졌는데, 그 理由는 윈도우 95用으로 開發된 게임이 거의 없어서 運營 體制가 큰 成功을 거두지 못할 것으로 생각되었기 때문이다.
라이온 킹
비디오 게임의 윈도우 砲팅에 關한 否定的인 反應이 함께했다.
[4]
도스는 비디오 카드, 키보드, 마우스, 사운드 裝置, 그리고 시스템의 나머지 모든 部分들에 直接 接近을 許容하였던 反面에 윈도우 95는 保護 메모리 모델이 包含되어 이 모든 것들에 對한 接近을 制限하였다. 마이크로소프트는 프로그래머들을 위한 早速한 솔루션이 必要했는데, 이 運營 體制가 出市되기 數個月 밖에 안 남았기 때문이다. Eisler (development lead), St. John, and Engstrom (program manager)은 함께 이 問題를 解決하여 솔루션을 내놓았는데 이 이름이 DirectX이다.
로고
[
編輯
]
-
DirectX 9.0
-
DirectX 12 Ultimate
構成 要素
[
編輯
]
- 다이렉트 그래픽 인프라스트럭처(
DirectX Graphics Infrastructure
)
- 다이렉트2D
(
Direct2D
)
- 다이렉트 엑스 10.1 標準에 包含된
2D 그래픽
表現 API이다.
GDI, GDI+
를 代替한다.
- 다이렉트3D
(
Direct3D
)
- 3次元 그래픽
을 그리는 데에 쓰인다.
- 다이렉트 드로
(
DirectDraw
)
- 2次元 그래픽을 그리는 데에 쓰이며, 8 以後로 다이렉트 그래픽으로 統合되면서 쓰이지 않고 있다. 다이렉트2D가 役割을 代身하고 있다.
- 다이렉트인풋
(
DirectInput
)
- 게임 콘트롤러
等의 造作 裝置를 制御할 때 쓰인다.(다이렉트엑스 10으로 넘어오면서 엑스인풋으로 이름이 바뀜).
- 엑스인풋
(
XInput
)
- Windows 크로스 플랫폼(Cross-Platform) 標準 入力(키보드 마우스 조이스틱 等等) API. Windows (XP sp1, Vista 以上) 및 XBox360 을 支援하며 DirectInput 代身에 XInput 을 使用하면 XBox360 專用 콘트롤러 및 固有한 機能(버튼,振動 等)을 Windows 에서도 使用할 수 있다.
- 다이렉트뮤직
(
DirectMusic
)
- 다이렉트 뮤직 프로듀서에 依해 만들어지는 사운드 트랙 再生.
- 다이렉트 오디오(
Direct Audio
)
- 다이렉트사운드
(
DirectSound
)
- 게임 中 音響 效果에 쓰인다. DirectX 8以後로 다이렉트 사운드3D와 統合되어, 다이렉트 오디오가 되었으나, 如前히 다이렉트사운드로 불린다.
- 다이렉트사운드3D
(
DirectSound3D
)
- 3次元 사운드를 위한 API. DirectX 8以後로 다이렉트 오디오에 統合되었다.
- 다이렉트라이트
(
DirectWrite
)
- 다이렉트 엑스 10.1 標準에 包含된
글꼴
表現 API이다.
- 다이렉트쇼
(
DirectShow
)
- 動映像,mp3 等의 멀티미디어 再生 API. 2005年 4月以後 DirectX SDK에서 完全히 除外되었으며, 現在는 Windows (Platform) SDK 에 包含된 狀態.
- 다이렉트플레이
(
DirectPlay
)
- 네트워크 게임을 위한 API 提供, 다이렉트엑스 8 以後로 開發이 中斷되었다.
- 다이렉트컴퓨트
(
DirectCompute
)
- 다이렉트X 11에 包含된 그래픽 프로세서를 通한 汎用 演算 API, 다이렉트 10까지 支援하는 그래픽카드에 對應한다.
버전 歷史
[
編輯
]
出市 타임라인
主要 릴리스
1995
| DirectX 1
|
---|
1996
| DirectX 2
|
---|
DirectX 3
|
1997
| DirectX 5
|
---|
1998
| DirectX 6
|
---|
1999
| DirectX 7
|
---|
2000
| DirectX 8
|
---|
2001
|
---|
2002
| DirectX 9
|
---|
2003
|
---|
2004
|
---|
2005
|
---|
2006
| DirectX 10
|
---|
2007
|
---|
2008
|
---|
2009
| DirectX 11
|
---|
2010
|
---|
2011
|
---|
2012
|
---|
2013
|
---|
2014
|
---|
2015
| DirectX 12
|
---|
2016
|
---|
2017
|
---|
2018
|
---|
2019
|
---|
2020
| DirectX 12 Ultimate
|
---|
버전
|
빌드 番號
|
OS
|
出市일자
|
1.0
|
4.02.0095
|
|
1995年
9月 30日
|
2.0 / 2.0a
|
4.03.00.1096
|
윈도우 95
OSR2 및 NT 4.0
|
1996年
6月 5日
|
3.0 / 3.0a
|
4.04.0068 / 70
|
윈도우 NT
4.0 SP3
윈도우 NT 4.0을 支援하는 가장 마지막 빌드
|
1996年
9月 15日
|
4.0
|
開發이 中斷되어 出市 안 됨.
|
5.0
|
4.05.00.0155
|
윈도우 95
OSR 2.5, 윈도우 NT 4.0에서 設置할 수 있던 윈도우 NT 5.0用 베타를 내려 받을 수 있음.
|
1997年
7月 16日
|
5.1
|
알 수 없음
|
알 수 없음
|
1997年
12月 1日
|
5.2
|
4.05.01.1600
|
|
1998年
5月 5日
|
5.2
|
4.05.01.1998
|
윈도우 98
|
1998年
5月 5日
|
6.0
|
4.06.00.0318
|
드림캐스트
|
1998年
8月 7日
|
6.1
|
4.06.02.0436
|
윈도우 98 SE
윈도우 NT 4.0에서 다이렉트 미디어를 支援하는 가장 마지막 빌드
|
1999年
2月 3日
|
7.0
|
4.07.00.0700
|
윈도우 2000
|
1999年
9月 22日
|
7.0a
|
4.07.00.0716
|
|
1999年
|
7.1
|
4.07.01.3000
|
윈도우 美
|
1999年
9月 16日
|
8.0
|
4.08.00.???? (RC0)
|
|
2000年
9月 30日
|
8.0
|
4.08.00.0400 (RC14)
|
|
2000年
11月 3日
|
8.0a
|
4.08.00.0400 (RC14)
設置 프로그램 修正
|
윈도우 95를 支援하는 가장 마지막 빌드
|
2000年
11月 7日
|
8.1
|
4.08.01.0810
4.08.01.0881 (RC7)
|
윈도우 XP
,
엑스박스
,
윈도우 서버 2003
|
2001年
11月 12日
|
9.0
|
4.09.0000.0900
|
윈도우 서버 2003
|
2002年
12月 19日
|
9.0a
|
4.09.0000.0901
|
|
2003年
3月 26日
|
9.0b
|
4.09.0000.0902 (RC2)
|
|
2003年
8月 13日
|
9.0c
|
4.09.0000.0904 (RC0)
|
윈도우 XP SP2, 윈도우 서버 2003 SP1,
엑스박스 360
에서의 가장 마지막 純粹 32비트 빌드
|
2004年
12月 13日
|
9.0c
|
4.09.0000.0904
|
9.0c를 支援했던 모든 윈도우 運營體制 버전들과 互換
D3DX
DLL
이 包含된 첫 버전
|
2005年
12月 9日
|
9.0c - 두 달에 한 番 업데이트
|
4.09.0000.0904
|
윈도우 XP
2005年 8月에 윈도우 98, 윈도우 98SE, 윈도우 ME, 윈도우 2000을 支援하는 마지막 버전이 發表되었다.
2005年 12月, 그리고 2006年 2月 업데이트는 또한
XML
形式을 몇 個의 클래스에 追加한다.
|
2005年부터 約 두 달에 한 番꼴로 새로운 버전을 發表하여 2007年 2月 버전까지 있다.
|
10.0
|
6.0.6000.16386
|
윈도우 비스타
萬 支援한다. 10버전에서는
픽셀 셰이더
와
버텍스 셰이더
를 統合한
統合 셰이더
를 使用하고 追加的으로 지오메트리 셰이더를 支援, 셰이더 모델 4.0, 128비트
HDR
等이 追加되었다.
|
2006年
11月 30日
|
10.1
|
6.0.6001.18000
|
윈도우 비스타 서비스팩 1에 包含되어 있다.
|
2008年
2月
|
11.0
|
6.01.7600.16385
|
윈도우 7
,
윈도우 서버 2008 R2
,
윈도우 서버 2008
SP2,
윈도우 비스타
SP2에 包含되어 있다.
|
2009年
10月 22日
|
11.1
|
6.02.9200.16384
|
윈도우 8
,
윈도우 서버 2012
,
윈도우 7
SP1,
윈도우 서버 2008 R2
SP1에 包含되어 있다.
|
2012年
10月 26日
|
11.2
|
6.03.9600.16384
|
윈도우 8.1
,
윈도우 서버 2012 R2
에 包含되어 있다.
|
2013年
10月 17日
|
12.0
|
10.00.10240.16384
|
윈도우 10
에 包含되어 있다.
|
2015年
7月 29日
|
代案
[
編輯
]
DirectX 系列의
應用 프로그램 프로그래밍 인터페이스
에 對한 代案으로 大部分의 機能이 있는
OpenGL
이 있다. 이 밖에도
SDL
,
알레그로
,
오픈맥스
,
OpenAL
,
FMOD
가 있다. 이 라이브러리들 가운데 大多數가 크로스플랫폼이거나 오픈 코드에 基盤을 두고 있다.
또, DirectX와 똑같은 API를 둔 다른 代案으로
와인
을 들 수 있다.
같이 보기
[
編輯
]
各州
[
編輯
]
外部 링크
[
編輯
]