특집기사 > 전체

[게임으로 보는 PC의 역사 4] DOS vs 윈도우 95 그리고 다이렉트X의 등장

/ 2

요즘은 컴퓨터를 업그레이드하는 유저의 상당수가 ‘게임을 원활히 하기 위해서’라는 이유를 꼽는다. 언젠가부터 ‘게임’은 컴퓨터를 통해 부수적으로 즐길 수 있는 옵션이 아니라 컴퓨터의 존재 이유가 되어가고 있다.

컴퓨터 게임은 컴퓨터의 역사와 그 맥을 같이한다. 컴퓨터의 역사가 곧 컴퓨터 게임의 역사인 것이다.

90s’ 중반: DOS vs 윈도우 95

1994년 8월에 발표된 윈도우 95는 이전 버전의 윈도우와는 비교할 수 없을 정도로 깔끔한 인터페이스와 편의성으로 운영체제의 대명사로 떠올랐다. 이전의 윈도우는 DOS 상에서 구동되는 일종의 응용 프로그램이었지만, 윈도우 95는 메모리와 드라이버를 직접 관리하는 독립적인 ‘운영체제’로 자리를 잡았다.

윈도우 95의 장점은 뛰어난 그래픽과 네트워크 기능이었다. 이전 버전의 윈도우보다 훨씬 깔끔하고 쓰기 편하게 바뀐 인터페이스와 인터넷에 접속할 수 있는 TCP/IP, 전화 접속 네트워킹을 제공한 것은 획기적인 시도였다. 멀티태스킹 기능이 윈도우 3.1에 비해 크게 발전했고, 파일 관리자에서 기능이 대폭 강화된 윈도우 탐색기도 인기의 비결이었다.

당연한 이야기지만, 최초의 윈도우 95용 게임은 윈도우에 내장된 ‘카드 게임(Solitaire)’과 ‘지뢰 찾기(Minesweeper)’, ‘프리셀(Freecell)’이었다. 마우스만으로 즐길 수 있는 간단한 퍼즐인 이 게임들은 지금까지도 세계에서 가장 많은 사람들이 플레이하는 게임으로 기록되고 있다(물론 무료로 제공되는 기본 프로그램이라는 것이 가장 큰 이유다).

그러나 그 뿐이었다. DOS용 명작 게임들이 쏟아져 나오던 당시, 윈도우용 게임 시장은 ‘카드 게임 외에는 아무것도 없다’고 말해도 과언이 아닐 정도로 부진을 면치 못했다. 아무리 뛰어난 그래픽과 편리한 인터페이스를 갖추고 있는 윈도우라 해도, 그래픽 처리 속도 면에서 DOS를 도저히 따라잡을 수 없었기 때문이다.

 윈도우 게임도 조금씩 발전하고 있다.

처음에는 3개뿐이었던 윈도우 게임이 지금은 11개로 늘었다.

라이브러리

컴퓨터 개발 초기부터 90년대 초반까지의 게임이 하드웨어의 발전에 큰 영향을 받았다면, 90년대 중반부터는 어떤 라이브러리를 쓰는가가 승부의 관건이었다.

라이브러리는 프로그래밍이나 하드웨어 제어를 위해 만들어 놓은 기능 모음집을 말한다. 복잡한 프로그래밍을 쉽게 처리하거나 하드웨어를 직접 제어하기 위해 쓰인다. 그래픽과 사운드에 관련된 모든 기능들이 운영체제와 하드웨어가 지원하는 라이브러리를 통해 표현된다. 개발 시간을 단축함은 물론 프로그램의 호환성을 보장받을 수 있기 때문에, 게임 개발자에게는 중요한 의미를 갖는다.

윈도우 시리즈는 프로그래밍의 전반적인 부분을 포괄하는 API(Application Programming Interface) 라이브러리를 포함하고 있다. 1995년 여름에 발표된 다이렉트X는 기존의 API에 그래픽과 음향 재생, 조이스틱 등 게임과 관련된 기능을 추가하기 위한 라이브러리였다.

90년대 중반에 게임을 즐기던 독자라면 게임 실행파일과 함께 보이던 ‘DOS4GW.EXE’라는 파일을 기억할 것이다. 이 파일은 DOS/4G의 라이브러리를 메모리로 읽어 들이기 위한 프로그램이다. Tenberry Software가 90년대 초부터 개발을 시작해 1995년 발표한 DOS/4G 2.0 버전은 DOS상에서 32비트 프로그램을 실행할 수 있는 강력한 기능을 제공했다. 개발 툴인 ‘Watcom C/C++’의 번들로 제공되었기 때문에 저예산 게임 개발자들에게는 최적의 라이브러리였다.

▲ 1996년에 발매된 ‘툼레이더’는 DOS상에서 구현할 수 있는

 최고의 그래픽으로 찬사를 받았다.

 

반면에 초창기 윈도우 95는 게임 쪽에서 찬밥 신세를 면치 못하고 있었다. 문제는 윈도우의 그래픽 처리 능력이었다. 하드웨어를 직접 컨트롤하는 DOS에 비해, 커널(시스템 관리자)을 통해 간접적으로 하드웨어를 컨트롤하는 윈도우 95의 그래픽 처리 속도는 답답하기 짝이 없는 수준이었다. 윈도우 3.X용으로 개발되었던 게임용 라이브러리인 WinG가 윈도우 95에도 적용되기는 했지만, 여전히 DOS/4G에 비해 스프라이트 기능 등이 뒤떨어졌기 때문에 간단한 시뮬레이션 게임이나 퍼즐 게임 등에서만 쓸 수 있었다. ‘Video for Windows’ 드라이버를 설치하면 프로그램 내에서 동영상을 재생할 수도 있었지만, 동영상 전용 그래픽 카드를 추가로 설치해야 원활하게 동작하는 문제가 있었다.

▲ 윈도우 3.1 전용으로 발매된 ‘3×3 아이즈 흡정공주’는

 WinG와 Video for Windows를 응용해 AVI 동영상을 게임 속에 삽입했다.

WinG 라이브러리로는 ‘삼국지 5’와 같은

보드 게임이나 퍼즐 게임들만 발매되었다.

WinG 라이브러리를 활용한 게임들은

미국보다는일본에서 많이 발매되었다.

‘시드마이어의 문명 2’는 WinG 라이브러리를

쓰는 몇 안 되는 미국 게임 중 하나였다.

 

90s’ 말: 다이렉트X의 등장

느려터진 속도 때문에 게이머와 제작사 모두에게 외면당하고 있었지만, 윈도우용 게임은 처음부터 DOS용 게임을 누를 만한 잠재력을 갖고 있었다.

PC 하드웨어 하나하나의 정보가 프로그램 안에 포함되어 있기 때문에, DOS용 게임을 즐기려면 사용자가 하드웨어에 대해 자세히 알아야한다. 프로그램 자체의 업그레이드도 쉬운 편이 아니어서, 최신 하드웨어의 기능을 쓰려면 그 하드웨어를 지원하는 버전의 게임을 따로 구입하는 수밖에 없었다. 그러나 윈도우는 커널이 하드웨어에 대한 모든 정보를 갖고 있기 때문에 초보자라도 편하게 게임을 즐길 수 있었고, 드라이버의 업그레이드도 쉬웠다.

까다로운 메모리 관리도 DOS용 프로그램들의 골칫거리였다. DOS 기반의 게임들은 아무리 컴퓨터에 많은 메모리를 장착해도 기본 메모리가 꽉 차면 실행할 수 없었다. DOS에서 지원하는 기본 메모리 640KB는 한글 드라이버와 메모리 관리자(HYMEM.SYS, EMM386.EXE), 마우스 드라이버, CD-ROM 드라이버 등만으로도 꽉 찰 정도였다. 하지만 대부분의 게임들에 300KB 이상의 기본 메모리가 필요했고, 90년대 말에 발매된 고사양 게임들 중에는 600KB의 ‘살인적인’ 메모리 여유분을 요구하는 게임들도 있었다. 남은 메모리를 확인하기 위한 명령어인 ‘MEM.EXE /C /P’에 질려버린 게이머들에게, 메모리에 신경쓰지 않아도 되는 윈도우용 게임은 부러움의 대상이었다.

▲ DOS의 복잡한 메모리 체계는 골칫거리 그 자체였다.

윈도우용 게임의 근본적인 속도 차이를 극복하기 위해 마이크로소프트가 개발한 것이 다이렉트X였다. 다이렉트X는 윈도우의 시스템 관리자인 커널을 통해 간접적으로 하드웨어를 컨트롤하는 이전의 방식에서 벗어나, 게임 프로그램이 직접 하드웨어를 조작할 수 있도록 프로그래밍된 라이브러리였다. 커널과 따로 구동되어 멀티태스킹 성능을 조금 포기할 수밖에 없었지만, 멀티태스킹이라는 개념 자체가 없던 DOS보다는 백배 나았다. 또한 WinG가 갖고 있던 범용성과 멀티미디어 기능을 더욱 강화하고, 조이스틱 등의 입력장치를 지원해 게임을 위한 최적의 라이브러리로 인정받았다.

1995년 9월에 발표된 초기 버전의 다이렉트X는 개발자조차도 불만을 표할 정도로 오류투성이의 라이브러리였다. 이듬해 6월에 윈도우 95 OSR2와 윈도우 NT 4.0용으로 발표된 2.0 버전은 안정성이 상당히 개선되었지만, 인지도는 여전히 낮았다.

다이렉트X가 힘을 발휘하기 시작한 것은 3.0 버전부터였다. 1996년 9월에 발표된 다이렉트X 3.0은 이전 버전과의 호환성이 떨어지는 문제가 있었지만, 이전 버전의 문제점들이 대부분 해결되었고 3D 라이브러리인 다이렉트3D를 포함해 게이머들의 눈길을 끌었다. 1998년 윈도우 98용으로 다이렉트X 5.0이 발표된 이후, DOS용 게임 시장은 거의 자취를 감추게 된다.

현재 최신버전의 다이렉트X는 9.0c 버전으로, 윈도우 뿐 아니라 XBOX 360 게임기와도 같은 라이브러리를 공유한다. 금년 중으로 윈도우 비스타와 함께 다이렉트X 9.0L과 D3D 10이 출시될 예정이다.

▲ 버전이 높아짐에 따라

 다이렉트X의 기능도한층 강화되었다.

현재 주로 쓰이는 9.0c 버전은

 OpenGL 부럽지 않은 3D 성능을 자랑한다.

▲ 96~98년의 게임들은 대부분

DOS용과 윈도우용이 따로 발매되었다.

 ‘커맨드 앤 컨쿼 - 레드 얼럿’도

그런 게임들 중 하나였다.

 

 

90s’ 말: 3D 게임의 시대

3D 게임의 역사에서 가장 중요한 위치를 차지하는 하드웨어는 1996년 3DFX에서 발표한 ‘부두(Voodoo)’ 칩셋이다. 일반인을 대상으로 하는 최초의 3D 가속 보드인 부두 시리즈는, 기존의 그래픽 카드에서 처리할 수 없던 3D 렌더링 연산을 대신 처리해 PC에서 고해상도의 3D 게임을 즐길 수 있도록 했다.

▲ 2000년 엔비디아에 인수되기 전까지, 

3DFX는 그래픽 카드 업계의

 선두를 유지하고 있었다.

▲‘부두 1’은 애드온 형식의 3D 가속 보드로,

 3D 연산만을 처리할 수 있었다.

 이후 발매된 시리즈는 2D 연산도 가능한

 독립적인 그래픽 카드로 출시되었다.

부두 칩셋이 발표된 이후, FPS(First-Person Shooter) 게임인 ‘퀘이크(Quake)’를 비롯해 ‘툼레이더(Tomb Raider)’ 류의 액션 어드벤처, 시뮬레이션 게임인 ‘맥워리어 2 (MechWarrior 2)’등 3D 가속 기능을 지원하는 다양한 장르의 게임들이 출시되었다.

윈도우 95가 발표되고 이듬해 다이렉트X가 선보인 이후에도, DOS용 게임과 윈도우용 게임은 게임 시장을 공유하고 있었다. 다이렉트3D가 발표된 이후로 윈도우의 3D 가속 기능이 DOS보다 나아졌지만, 대부분의 게임 제조사들은 DOS와 윈도우 버전을 따로 출시하는 경향을 보였다.

3D 게임이 윈도우 전용으로 돌아서게 된 것은 1998년 이후였다. 윈도우 98을 타깃으로 한 다이렉트X 5.0에 포함된 다이렉트3D 기능은 단순히 이전 버전의 수정본 이상의 기능을 갖고 있었다. 하드웨어 제조업체들도 DOS에서 손을 떼고 윈도우의 다이렉트X만 지원하는 하드웨어들을 속속 출시하기 시작했다.

▲ 대표적인 FPS 게임인 ‘퀘이크’는 3D 가속 기능이 없는

 그래픽 카드에서는 플레이가 어려울 정도의 고사양이었다.

그러나 3D 가속 기능은 다이렉트X만의 전유물이 아니었다. 3DLabs, 실리콘 그래픽스(Silicon Graphics) 등 3D 가속과 관련된 기술을 개발하는 회사들은 얼마든지 있었고, 3DFX에서 부두 칩셋을 통해 발표한 Glide도 사실상 다이렉트X와는 관계가 없는 기술이었다. 그 중에서도 실리콘 그래픽스의 OpenGL 기술은 독보적인 위치에 서 있었다. 실리콘 그래픽스에서 만든 고가의 슈퍼 컴퓨터를 위해 개발된 OpenGL은 1993년 개봉한 ‘쥬라기 공원(Jurassic Park)’ 영화를 통해 이미 그 뛰어남을 인정받고 있었다. 그러나 OpenGL을 지원하는 하드웨어의 가격이 상상할 수 없을 정도로 비쌌기 때문에 게임용으로는 도저히 적용할 수 없는 기술이었다. 마이크로소프트는 다이렉트3D를 통해 OpenGL을 흉내 내려 시도했다. 말하자면 다이렉트3D는 일반 유저들을 위한 저가형 OpenGL 기술인 셈이다.

▲ ‘쥬라기 공원’ 이후, 실리콘 그래픽스의 슈퍼 컴퓨터는

 할리우드 블록버스터급 영화의 필수품이 되었다.

최근에는 그래픽 카드와 컴퓨터의 성능이 높아지면서 전문가용 컴퓨터에만 쓰이던 OpenGL을 게임용으로도 쓸 정도가 되었다. 다이렉트X의 성능이 크게 향상되었다고는 해도, 아직은 OpenGL을 따라올 수 있는 수준이 아니다. 따라서 마이크로소프트는 윈도우 상에서 다이렉트X와 OpenGL을 연동해 쓸 수 있는 여지를 남겨두었다. OpenGL도 게임 상에서 구현되려면 다이렉트X의 라이브러리를 참조해야 하기 때문에, OpenGL과 다이렉트3D는 경쟁 상대이면서도 서로 연동되어 동작하는 애매한 관계로 공존하고 있다.

OpenGL을 지원하는 게임들의 그래픽은 다이렉트X와는

비교할 수 없을 정도다. 최근 출시되는 3D 온라인 게임들도 대부분

OpenGL을 통해 3D 그래픽을 구현한다.

이 기사가 마음에 드셨다면 공유해 주세요
게임잡지
2005년 3월호
2005년 2월호
2004년 12월호
2004년 11월호
2004년 10월호
게임일정
2025
11