메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

게임 엔진 블랙 북 : 둠

한빛미디어

번역서

판매중

  • 저자 : 파비앙 상글라르
  • 번역 : 박재호
  • 출간 : 2021-04-01
  • 페이지 : 472 쪽
  • ISBN : 9791162244098
  • 물류코드 :10409
  • 초급 초중급 중급 중고급 고급
4.9점 (17명)
좋아요 : 3

 

 

 

web.jpg

 

 

전설의 게임 <둠>은 어떻게 탄생했는가 

 

『게임 엔진 블랙 북』 시리즈 두 번째 책으로 <울펜슈타인 3D>의 후속작 <둠> 개발 과정을 다룬다. <둠>은 당대 거의 모든 PC에 설치될 만큼 큰 인기를 끌었고, 최근 <둠 이터널>에 이르기까지 게임 역사에 중대하고 지속적인 영향을 미쳤다. 이 책은 이드 소프트웨어의 천재 개발자들이 직면한 다양한 문제 및 문제를 해결하기 위해 사용한 공학적인 방법을 엿본다. 누군가의 ‘학점, 인간관계, 심지어는 직업’까지 위태롭게 만들었던 위험하고도 찬란한 게임 <둠>의 비밀을 파헤쳐보자.

 

 

추천사

 

단점을 찾기 어려운 책입니다. 이 책으로 저자가 많은 돈을 벌지 못했다면 그게 유일한 단점이겠네요. 이만큼이나 많은 정보를 전달하다니, 이건 거의 자선 행위입니다.

_Graspee(아마존 독자)

 

존 카맥은 소프트웨어 개발의 영웅입니다. <둠>을 플레이하고 놀라 자빠질 뻔했던 추억이 기억납니다. 당시의 열악한 하드웨어 환경에서 적절한 원근감과 텍스처 매핑을 구현했다는 게 정말 놀랍습니다. 이 책은 코드 작동 방식에 대한 세부 사항뿐 아니라 흥미로운 역사까지 설명합니다. 『게임 엔진 블랙 북: 울펜슈타인 3D』의 좋은 동반자이기도 합니다. 1990년대 초의 게임 개발 환경에 관심이 있는 모두에게 이 책을 추천합니다.

 _Scott A. Southard(아마존 독자)

 

파비앙 상글라르 저자

파비앙 상글라르

15년 차 베테랑 개발자. 프랑스에서 컴퓨터 과학 석사학위를 취득했다. 영어를 배우러 캐나다에 갔다가 로저스(Rogers)와 퀵플레이(QuickPlay)를 거쳐 2014년부터 구글 본사에서 소프트웨어 엔지니어로 일한다.

 

박재호 역자

박재호

포항공과대학교 컴퓨터공학과 학부와 대학원을 졸업했다. 임베디드 시스템 개발, 기업용 백업 소프트웨어 개발, 방송국 콘텐츠 수신 제한 시스템 개발과 운영 지원, 클라우드에서 동작하는 서비스 개발에 이르기까지 다양한 실무 경험을 토대로 고성능 고가용성 시스템을 설계한다. 코스닥 상장사 엑셈 CTO로 인공지능과 스마트팩토리 관련 개발을 총괄했으며, 전 아이콘(ICON) 치프 아키텍트로 퍼블릭 블록체인 개발과 운영에 대한 경험이 풍부하다. 집필과 번역한 책이 40여 권에 이른다. 최근에는 유튜브 채널(https://www.youtube.com/c/박재호dev)을 열고 개발자를 위한 다양한 지식을 전달하고 있다.

지은이·옮긴이 소개

옮긴이의 말

머리말 (존 카맥)

머리말 (데이브 테일러)

머리말 (존 로메로)

이 책에 대하여

 

Chapter 0 프롤로그

 

Chapter 1 들어가며


Chapter 2 IBM PC

2.1 인텔 80486

__2.1.1 파이프라인 개선

__2.1.2 캐싱

__2.1.3 L1 캐시

__2.1.4 버스 버스트 전송

__2.1.5 오버드라이브와 L1 캐시의 필요시 메모리 쓰기

__2.1.6 다이

__2.1.7 486 프로그래밍

2.2 비디오 시스템

2.3 숨겨진 개선

__2.3.1 VGA 칩 제조업체

__2.3.2 VESA 로컬 버스

2.4 사운드 시스템

__2.4.1 사운드 블라스터 16

__2.4.2 그래비스 울트라사운드

__2.4.3 롤랜드

2.5 네트워크

__2.5.1 널 모뎀 케이블

__2.5.2 네트워크 카드

__2.5.3 모뎀

2.6 램

__2.6.1 도스/4GW 확장자

2.7 왓콤

__2.7.1 ANSI C

 

Chapter 3 넥스트

3.1 역사

3.2 넥스트 컴퓨터

3.3 제품 라인

3.4 넥스트큐브

3.5 넥스트스테이션

3.6 넥스트디멘션

3.7 넥스트스텝

__3.7.1 GUI

3.8 이드 소프트웨어가 본 넥스트

3.9 롤러코스터

__3.9.1 몰락

__3.9.2 부활

 

Chapter 4 팀과 도구

4.1 위치

4.2 창조적인 방향

4.3 그래픽 애셋

__4.3.1 스프라이트

__4.3.2 무기

__4.3.3 하늘

4.4 지도

__4.4.1 DoomEd

4.5 지도 전처리기(노드 빌더)

4.6 홍보

4.7 음악

4.8 사운드

4.9 프로그래밍

__4.9.1 인터페이스 빌더, 객체 지향 프로그래밍, 오브젝티브-C

4.10 배포

__4.10.1 WAD 아카이브: 모든 데이터는 어디에 있을까?

 

Chapter 5 소프트웨어: idTech 1

5.1 소스 코드

5.2 아키텍처

__5.2.1 엔디언 해결

__5.2.2 API 해결

5.3 다이빙!

__5.3.1 내 main은 어디에

5.4 고정 시간 단계

5.5 게임 스레드/사운드 스레드

5.6 고정 소수점 산술

5.7 영역 메모리 관리자

5.8 파일 시스템

__5.8.1 덩어리

5.9 비디오 관리자

5.10 렌더러

5.11 2D 렌더러

__5.11.1 중간 휴식

__5.11.2 상태 표시줄

__5.11.3 메뉴

__5.11.4 헤드업 디스플레이

__5.11.5 자동 지도

__5.11.6 화면 지우기

5.12 3D 렌더러

__5.12.1 이진 공간 분할법: 이론

__5.12.2 이진 공간 분할법: 실전

__5.12.3 벽 그리기

__5.12.4 하위 픽셀 정확도

__5.12.5 원근법이 교정된 텍스처 매핑

__5.12.6 평면 그리기

__5.12.7 평면 그리기(실제 상황)

__5.12.8 조명 감소

__5.12.9 마스킹된 요소 그리기

__5.12.10 마스킹된 주인공 그리기

__5.12.11 그림 형식

__5.12.12 스프라이트 종횡비

5.13 팔레트 효과

5.14 입력

5.15 오디오 시스템

__5.15.1 오디오 데이터: 형식과 덩어리

5.16 사운드 전파

5.17 충돌 감지

5.18 인공지능

__5.18.1 최적화

5.19 지도의 비밀

5.20 게임 틱 아키텍처

5.21 네트워킹

__5.21.1 구조

__5.21.2 PC 네트워크 드라이버

__5.21.3 구현

__5.21.4 데스매니저

5.22 성능

__5.22.1 프로파일링

__5.22.2 프로파일러로 프로파일링

__5.22.3 도스 최적화

5.23 성능 조율

5.24 높은 세부 사항/낮은 세부 사항 모드

5.25 3D 캔버스 크기 조정

 

Chapter 6 게임 콘솔 이식

6.1 재규어(1994)

__6.1.1 재규어 프로그래밍

__6.1.2 재규어용 <둠>

6.2 32X(1994)

__6.2.1 32X용 <둠>

6.3 슈퍼 닌텐도(1995)

__6.3.1 아르고넛 게임스

__6.3.2 슈퍼 닌텐도용 <둠>

6.4 플레이스테이션(1995)

__6.4.1 플레이스테이션용 <둠>

6.5 3DO(1996)

__6.5.1 3DO 프로그래밍

__6.5.2 3DO용 <둠>

6.6 새턴(1997)

__6.6.1 새턴 프로그래밍

__6.6.2 새턴용 <둠>

 

Chapter 7 에필로그

 

부록 A 버그

부록 B 점 점 점

부록 C 넥스트스테이션 터보컬러

부록 D 보도자료

부록 E 소스 코드 출시 노트

부록 F doombsp 출시 노트

부록 G <둠> 생존자의 전략과 비밀

부록 H 데이브 테일러와의 인터뷰

부록 I 랜디 린든과의 인터뷰

부록 J 오픈GL 대 다이렉트3D.plan

부록 K 집필 후기

출판사 리뷰

 

하드웨어의 한계를 극복한 FPS의 혁신 <둠>이 탄생하기까지 

이드 소프트웨어 천재 개발자들의 엔진 개발 비법 두 번째 이야기 

 

1993년으로 돌아가 정육면체 모양의 커다랗고 무거운 컴퓨터 앞에 앉았다고 상상해보자. 사무용으로 만들어진 IBM PC는 워드프로세서와 스프레드시트를 실행하도록 설계된 물건이었다. 다음으로는 <둠>을 떠올려보자. 플레이어를 향해 다가오는 수많은 지옥의 괴물을 샷건으로 물리치는 아드레날린 넘치는 게임. <둠>은 비평가와 플레이어 모두에게 사랑을 받았고, 엄청난 성공을 거뒀다. 고작 9달러짜리 게임으로 하루에 10만 달러씩 벌어들였다. 

 

한계투성이 하드웨어와 전설의 게임. 둘 사이의 커다란 간극을 극복한 이드 소프트웨어의 천재 개발자들 이야기가 여기에 있다. 『게임 엔진 블랙 북: 둠』은 한때 마법으로 여겨졌던 <둠> 개발에 사용한 소프트웨어 내부를 뜯어보고, 출시 이후 다양한 콘솔로 <둠>을 이식한 과정을 추적한다. 개발 과정의 비하인드 스토리와 인터뷰가 읽는 재미를 더한다. 시리즈 두 권을 모두 읽을 충성 독자를 위해 『게임 엔진 블랙 북: 울펜슈타인 3D』에서 다룬 콘텐츠는 반복하지 않았다. 

 

이드 소프트웨어의 개발자들은 열악한 환경에도 불구하고 텍스처 매핑, 직각이 아닌 벽, 원근에 맞춘 조명 감소 효과, 가변 높이 바닥과 천장, 주변 환경과의 상호작용, 팔레트 변환, 네트워크로 연결된 다중 사용자 지원 등 게임 기술의 ‘최첨단’을 선도했다. 다른 누구도 가보지 않은 곳에 닿기 위해 그들은 밤낮으로 일했고, 바닥에서 잠들었으며, 험한 강을 건넜다. 

 

불가능해 보이는 제약 속에서도 타협하지 않고 게임성을 높이기 위해 갖은 방법을 동원해 꿈을 현실로 만든 험난한 여정이 이 책에 담겨 있다. <둠>은 다양한 콘솔로 이식된 것은 물론 <둠 2>와 <둠 3>, 나아가 2016년 리부트작과 2020년 <둠 이터널>에 이르기까지 게임 역사에 중대하고 지속적인 영향을 미쳤다. 존 카맥, 존 로메로, 데이브 테일러 등 천재 개발자들의 통찰력이 게임 개발 과정에서 정말 중요한 것이 무엇인지에 대한 새로운 답을 줄 것이다.

KakaoTalk_20220106_030025536.jpg

 

존 카맥이 둠을 출시 한 후 20년이 훌쩍 지났다. 존카맥은 아래와 같이 말하고 있다. "그동안 내가 쌓은 통찰력과 기술을 사용하면 게임 구현을 위한 더 나은 방법을 생각할 수도 있다. 그러나 타임머신을 타고 돌아가 모든 것을 수정하더라도, 아마 큰 변경 사항은 없을 것이다. 25% 더 빠르게 만들고 몇몇 기능을 추가한들 둠이라는 유산의 가치가 크게 달라지지는 않았을 것이다."

 

존 로메로는 다음과 같이 말하고 있다 "둠엔진은 그 누구도 컴퓨터 화면에서 본 적 없던 세계를 표출했다. 혁명이었다. 멀어질수록 어두워지는 각진 벽과 복도가 그 예다. 브루스 네일러의 이진 공간 분할법(BSP)를 적용해 3D 렌더링 속도를 크게 향상했고, 추상 레벨 디자인 방식은 20년 동안 지속된 판에 박힌 90도 미로 벽 디자인에서 벗어나게 했다. 새로운 디자인은 텍스처를 입힌 바닥과 천장, 계단, 플랫폼, 문, 깜박이나느 조명등을 포함했다. 우리는 이러한 디자인 팔레트로 함께 작업하는 것이 좋았고, 이는 게임의 테마인 '지옥'과도 잘 맞아떨어졌다."

 

 

어렸을 적 한 번이라도 둠을 즐겼었던 적이 있었던 개발자라면 이 책을 읽고 3D FPS장르가 어떻게 발전되어 왔는가를 알 수 있을 것이다. 물론 쉽지 않은 구시대의 여러가지 유물인 주제를 다루고 있지만 다 이해할 필요는 없다고 생각한다. 당시의 하드웨어로 둠이 보여준 그래픽스 기능들이 어떻게 구현되었는지 조금이나마 이 책을 통해서 들여다 볼 수 있다고 생각한다.

 

 

둠을 즐겼던 개발자 분들이 한 번쯤 읽어보시기를 추천드린다.

 

이 글은 한빛미디어로 부터 책을 증정받아 작성되었습니다.

지난번에 나왔던 게임 엔진 블랙 북 울펜슈타인 편을 아주 재밌게 봤었다. 그때 한창 옛날 에뮬 게임 구현해볼까 하면서 그 당시에 많이 사용했던 기술들을 찾아봤었을때여서 울펜슈타인 편도 아주 많이 나의 궁금증을 해결해주었다.

이번에도 좋은 기회가 생겨 둠편을 받아서 읽었다.


표지는 이렇게 생겼다. 지난 번에는 금색이었는데 이번에는 심플하게 화이트.


생각보다 진짜 너무 도움될만한 책인 것 같다고 느낀 것이, 기존의 게임 관련 책에서 이렇게 까지 CS 기초를 다뤄주면서 퍼포먼스 최적화를 위해서 알려주는 책이 있는가 싶다. 사실 위의 CPU 파이프라이닝은 컴공 대학생이라면 반드시 듣는 컴퓨터 구조에서 배우는 헬 파트이다. Stall을 최대한 줄이기 위해 if문의 조건 여부에 관련없이 두개 모두 미리 실행하는 그런 최적화 기법도 있다. 아무튼, 이런 부분들도 같이 배경지식으로 다뤄줘서 너무 좋은 것 같다. 울펜슈타인 책 보다는 그때 당시 하드웨어에 대해서 더 많이 다루는 것 같은 느낌이 들었다.


Visplane을 활용한 맵 렌더링 코드들을 아주 자세하게 풀어서 설명해주고 있다. 겁나 어렵긴 한데 확실히 바닥부터 혼자 보는 것 보다는 훨씬 상세하고 친절하게 설명해주고 있다.


포프 영상 볼때 가끔씩 들을 수 있는, 렌더링 최적화를 위해서 어셈블리까지 쓴다고 하는 그런 코드를 여기서 볼 수 있다. 진짜로 어셈블리어로 렌더링 코드를 최적화 한다ㄷㄷ 진짜 과거에는 어마어마한 프로그래머들이 많았던 것 같다. 이렇게까지 해서 최적화를 하고 엔지니어링을 사용하다니 정말 대단한 것 같다는 생각밖에 들지 않는다. 이 외에도 정말 기상천외한 방법들을 많이 썼기 때문에 정말 다양한 접근 방식을 많이 알게 되는 것 같다. 게임 개발자라면 꼭 한번 읽어봐야 하는 책이 아닌가 싶다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

결론부터 말하자면 재미있었다. 프로그래머도 기획자도 아트 직군도 재미있게 볼 수 있고 두꺼운 두께와 읽는데 소비한 시간만큼 얻는 게 있는 가치 있는 책이었다. 회사 라이브 업무와 과제에 빡빡한 일정에도 틈내서 읽어나갈만큼 재미가 있었다. 

 

‘게임 엔진 블랙 북 : 둠’은 ‘게임 엔진 블랙 북’ 시리즈의 두 번째 책으로 전작은 ‘울펜슈타인 3D’의 출시 과정을 다룬 책이다. 이 책은 ‘울펜슈타인 3D’가 출시된 1992년 5월부터 시작해서 1993년 12월까지 ‘둠’의 출시 과정과 그 배경에 대한 일대기를 다루고 있다.

 

20210524_102850.jpg

대개의 출시 과정에 대한 책을 보면 기획자나 개발자의 출시 과정의 고뇌와 깨달음 등을 일기 형식을 다루는 것이 대부분인데, 이 책은 당시의 기술 배경과 개발 도구, 개발 방법, 게임이 개발되는 동안 필요한 A부터 Z까지를 모두 담아내고 있다. 개인적인 생각으로는 이 책의 정보를 가장 유용하게 쓸 수 있는 사람은 프로그래머라고 생각한다. 물론 기획자 입장에서도 충분히 얻는 것이 많은 책이었다. 누군가는 지나치다 싶을 만큼 넘치는 배경 지식 이야기에 지루하다고 느낄 수도 있으나, 게임 역사의 한 획을 다른 정보를 찾아보지 않고 이  책 한 권만을 읽으면서 알 수 있게 된다는 것은 이 책의 엄청난 매력이라고 생각한다. 기술적으로 기획자가 이해하지 못하는 내부적인 면도 많이 알 수 있었고, 개발이 진행되는 과정의 세세한 부분들을 모두 다루고 있어 이후의 업무에도 크게 보탬이 될 것 같다. 개발 과정은 물론 이식 작업, 소스코드나 버그 등도 다루고 있어서 하나의 커다란 게임이 만들어지는 일련의 과정을 간접적으로 학습할 수 있어 기획자 지망생에게도 좋은 공부가 될 책이라고 생각한다. 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

내가 태어나기도 전의 게임에 대한 책을 본다는 기대감에 부풀어 책을 읽었다.

무엇보다 게임이 개발되던 1992년에 이런 대작을 만들었다는 사실이 너무 신기하게 느껴졌다.

"게임 엔진 블랙 북: 둠"은 이드 소프트웨어의 울펜슈타인 3D 다음 작품인 "둠"의 개발 과정을 담고 있다. 당시 개발에 참여한 개발자들의 이야기와 그 당시 직면한 문제들을 볼 수 있다.

책은 게임이 개발되던 1990년대 초의 개발 환경과 하드웨어에 대한 이야기로 시작한다. 당시로서는 고사양의 하드웨어를 요구하는 환경 탓에 직면했던 문제들과 이를 해결하기 위해 어떤 방법을 사용했는지를 얘기한다. CPU, 메모리, 비디오 시스템, 오디오 시스템, 네트워크, 게임 엔진, 콘솔 이식까지 당시의 하드웨어 한계를 넘기 위해 개발자들이 어떤 노력을 했는지 자세하게 나타나 있다.

하드웨어의 한계를 뛰어넘기 위한 것들을 설명하다 보니 컴퓨터에 과한 지식 없이는 읽기 힘든 내용이 주를 이룬다. 아무런 지식 없이 단지 '둠'이라는 게임이 어떻게 개발됐는지를 보려는 사람에게는 읽기 힘든 책일 수 있다.

책을 읽으면서 개발 당시의 개발 환경, 한계 등을 간접적으로 느낄 수 있었고, 개발을 할 때 어떤 것들을 고려해야 하고 어떤 식으로 해야 하는지도 느낄 수 있다. 

게임을 좋아하는 사람이나 혹은 게임업계에서 일하는 프로그래머라면 한번 쯤은 그 이름을 들어봤을 게임이 있다. "둠".

게임의 역사에 많은 영향을 끼친 게임 중에 하나라는 것에 이의를 제기할 사람은 별로 없을 것이다. 그런 둠의 개발에 관한 내용을 주제로 책이 나왔다.

 

게임 엔진 블랙 북 둠 이다. 

이 책은 게임 엔진 블랙북 울펜슈타인 3D의 뒤를 이은 책이다. 

게임을 만든 존 카멕은 프로그래머들 사이에서는 아주 유명하니 설명은 따로 하지 않겠다.

이 책을 보면 울펜슈타인3D 이후 차기작 둠의 탄생에 대한 이야기가 주이다. 

책은 둠을 개발하기 위한 하드웨어에 대한 설명으로부터 시작한다. 램과 cpu 그리고 사운드 카드까지 둠이라는 게임을 구현하기 위한 하드웨어들의 제한적 성능과 그것을 극복한 방법들이 책 전반의 내용이다. 또한 게임을 구현하는데 필요했던 기술들의 코드가 들어가있다.

후반부에는 둠을 다른 기기들로 이식하는데에 대한 이야기들로 채워져있다. 그 당시의 콘솔 기기들의 한계와 이식의 어려움, 그것으로 인해 포기해야했던 기능등의 이야기가 담겨져있다.

게임을 만드는 프로그래머가 목표라면 한번 쯤은 천재적? 프로그래머들이 게임을 개발하면서겪게되는 그러한 상황들을 어떻게 해쳐 나갔는지 간접 경험해보는 것도 좋을 것이다. 

물론 이 책 게임엔진 블랙북 둠 을 통해 전설적 게임의 탄생으로 그 간접경험을 가지는건 더욱 좋은 선택이 될 것이다. 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

d1.jpg

 

d2.jpg

 

d3.jpg

 

d4.jpg

 

d5.jpg

 

d6.jpg

 

d7.jpg

 

d8.jpg

 

d9.jpg

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

--------------------------------------------------------------------

 

 

 

몇달 전 먼저 출판되었던 "게임 엔진 블랙 북 -울펜슈타인 3D-"를 개인적으로 구매해 먼저 읽었었다.

 

그때의 그 책과 "게임 엔진 블랙 북 -둠-" 또한 유사한 구성으로 이루어져 있다.

 

당시의 시대적 배경과 하드웨어의 한계 그리고 그들의 업적.

 

 

 

github에 오픈 되어 있는 소스를 찾아 실행해보았다.

 

와우... 고즌&레트로 그 자체...

 

지금이야 고전&레트로라고 불리지만

 

당시에는 이름하여 장르의 대표 게임중 하나였을텐데 게이머들에게 다가왔을 충격은 어땠을까

 

 

 

클래식이 영원한데는 이유가 다 있다고 한다.

 

둠도 그러하지 않을까.

 

 

 

책을 읽다보면 나 또한 둠을 포팅해보고 싶다는 열정이 생긴다..

 

거장의 어깨에 올라서 그들의 업적에 감사하고 함께 하고 싶어진다.

 

 

image0 (1).jpeg

 

image1.jpeg

 

SE-fa2ee0f7-f2d5-42aa-94de-42dd089d2ce7.jpg

 

 

리뷰에 앞서 좋은 책을 집필해준 저자 파비앙 상글라르님께 감사의 말씀을 드리며,

이런 책을 번역해준 박재호님과 한빛미디어에도 감사의 말씀을 드립니다.

 

프로그래머를 넘어 엔지니어를 꿈꾸고 있다면 반드시 읽어보아야할 교양서

 

지금 현재, 2021년이 프로그래머가 되겠다고 말하는 사람들이 넘쳐나는 시대인 것 같다.

물론 이전에도 수요와 공급은 꾸준히 지속되고 있었지만 기폭제가 된 것은 넥슨의 연봉 인상이라고 생각한다.

신입 사원 초봉을 5천만원으로 주겠다는 파격적인 기사를 내걸었고,

개발자를 뺏기면 안되는 다른 업체들도 연봉 인상 대열에 합류하였다.

아직까지는 개발자의 공급이 수요를 쫓아가지 못하는 상황이다.

 

단순히 연봉만 보고 너도나도 프로그래머가 되겠다고 학원에 등록하는 사람들이 늘어났고,

자칭 프로그래머라는 사람들이 우추죽숙 생겨났다.

김포프는 단순히 코드만 칠줄 아는 사람들과 구분하기 위해 진정한 프로그래머를 엔지니어라고 말하곤 한다.

 

이 책은, 그런 엔지니어를 꿈꾸고 있다면 읽어보아야할 교양서적이라고 생각한다.

 

어릴적 큰 충격을 주었던 포켓몬스터 골드버전 게임은 용량이 단 1MB이다.(위 이미지 용량의 3배...)

인터넷으로 배포하면서 버그 수정 및 컨텐츠 업데이트를 지속적으로 하는 현재와는 달리,

용량이 정해져있었고 배포 버전을 만드는 순간 버그 등은 있어서는 안되는 시절이였다.

따라서 메모리 1비트조차 허투로 쓸 수 없었기에 엄청난 노력을 기울여야 했던 것이다.

그런 시절에 등장한 게임 둠의 소스 코드와 제작 과정을 보는 것은 게임 개발자, 특히 그래픽 프로그래머에게 좋은 영감이 된다.

 

이 부분은 책의 핵심인 5장 소프트웨어 : idTech 1에 자세하게 실려있다. 컴퓨터 그래픽은 대부분 눈속임이다. 게임 개발자가 하드웨어 스펙까지 고려하면서 개발해야 하는 시기는 지났지만, 컴퓨터 그래픽의 기본 원리는 아직까지 유효하다. 대표적인 것이 3D 렌더링이다. 여러분이 보고 있는 화면은 2D다. 2D 화면에서 3D처럼 보이게 하기 위해서 원근법 등등 예전 화가들이 쓰는 기법을 이용한 것이 컴퓨터 그래픽이라고 보면 된다. 더군다나 화면에 보이는 모든 것은 리얼타임, 즉, 최소 30fps 이상이어야 한다. 하드웨어 스펙이 고정되어 있는 시절에 최고의 성능과 눈속임을 끌어내기 위해 둠에서 어떻게 처리하였는지 읽으면서 신기할 따름이였다. 

 

그러나 배틀그라운드 게임이 보여주었듯이 게임이 미친듯이 재미있으면, 사용자들이 알아서 하드웨어 스펙을 높인다. 따라서 게임 개발자들이 유저들의 컴퓨터 사양을 고려해서 게임을 개발하는 시대는 지났다고 말한다. 이런 관점에서 이 책은 필독서는 아니다. 그러나 아무리 하드웨어 스펙이 좋아도 성능에는 한계점이 존재하고 개발자는 창의력으로 이를 극복해야한다. 그렇기에 언제나 성능과 싸워야하는 그래픽 프로그래머들이라면 이 책은 읽어봐야 한다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

게임엔진 블랙북 둠_02.png

 

'게임 엔진 블랙 북 : 둠'을 읽고서

 

 

 

 

 

 

 

 

 

'게임 엔진 블랙 북 둠' 책을 보면서 오랜만에 추억이 새록새록 생각이 나는 시간이였던거 같다.

 

지금의 FPS 게임을 보면 아주 촌스럽기 그지없을 게임일지 모르지만, 그 당시에는 정말 엄청난 게임이였고, 

 

PC방도 거의 없던 시절이여서 대학교 전산실습실에서 실습은 안하고 몰래 IPX로 연결해서 실습은 안하고, 

 

둠과 워크래프트를 즐기던 그 시절에 둠의 개발에 대한 역사와 함께 발전해온 PC와 하드웨어 제품들의

 

발전상도 함께 알아볼수 있는 책이다.

 

 

 

 

 

 

게임엔진 블랙북 둠_03.png

 

둠을 1년도 안되는 11개월만에 쉐어웨어버전을 출시할수 있었던 것은 둠의 개발자들의 노력 뿐만 아니라,

 

잡스가 그당시에 애플을 나와서 설립해 만들었던 넥스트컴퓨터(NEXT)가 큰 역할을 했다는 것을 알수 있다.

 

 

 

대부분의 x86 PC 기반들이 MS-DOS를 사용하여 텍스트 기반의 OS를 사용하던 당시에 넥스트컴퓨터는

 

GUI 방식을 사용하여 그당시에는 정말 획기적이였으며 현재의 맥OS가 있게된 시작이기도 하다.

 

 

 

 

 

 

 

게임엔진 블랙북 둠_07.png

 

지금도 고성능 하드웨어를 요구하는 게임들이 있지만, 둠을 즐기던 시절에는 정말로 하드웨어 성능이

 

부족하여 둠 게임을 제작하는데 얼마나 어려움이 있었던 것인지를 알수 있었고,

 

지금 게임 개발과는 많이 다를수 있지만, 게임게발에 관심있는 분들이나,

 

둠 게임을 즐기셨던 분들에게 즐거운 시간과 함께 많은 도움이 될거 같다.

 

 

 

게임엔진블랙북둠.jpg

 

< 게임 엔진 블랙 북: 둠 > | 파비앙 상글라르 지음 | 박재호 옮김 | 한빛미디어

 

나는 게임을 잘 하지 않는 편이다. 둠이라는 게임도 별로 하지는 않았다. 그러다 보니 둠이라는 게임이 그 당시에 얼마나 대단한 게임이었는지 알지 못했다. 이 책을 통해 둠 게임이 그 당시에 얼마나 대단했는지 느낄 수 있었다. 당시 제한된 하드웨어 제약을 극복하고 원하는 기술을 구현하기 위해 노력한 과정을 잘 느낄 수 있었다.

 

둠이 나올 당시 PC 환경도 급격하게 변화하는 시기였던 것 같다. 학교 환경도 터미널에서 PC로 바뀌고, PC도 자주 새로운 모델로 변경되어 갔다. 게임도 점점 화려해지고 복잡해져 가는 시기였던 것으로 기억한다. 인텔 386에서 486으로, 스티브 잡스가 넥스크 컴퓨터를 설립한 후 출시된 넥스트 컴퓨터, 그리고 다양한 하드웨어 아키텍쳐 등 그 당시에 이론적으로만 접했던 내용들이 실제 소프트웨어적으로 어떻게 적용되었는지를 새롭게 확인할 수 있는 내용으로 구성되어 있다.

 

1990년대 초반을 생각하면 개발 환경이 지금과는 완전히 다른 세상이었던 것 같다. 원하는 기술적인 내용은 대부분 잡지 칼럼을 통해 접하는 경우가 많았고 간혹 PC 통신 등을 통해 기술 교류도 일부 이루어졌던 것 같다. 대부분의 문제를 혼자 알아서 해결해야 했으며 제대로 된 통합 개발환경이 제공된 것도 그 시기 이후였던 것으로 생각된다. 제한된 하드웨어(CPU, 메모리 등)와 비디오 및 오디오 컨트롤을 위해 다양한 트릭이 사용되던 시기였다.

 

이 책을 읽다 보니 그 당시 생각이 많이 떠 오른다. 물론 둠 개발사이 이드소프트 개발자들에 비할바는 아니지만 나름 기술적인 문제를 해결하기 위해 무지 노력했고, 하드웨어적인 한계 극복에 많은 노력을 기울였던 시기였던 것 같다. 책에서 언급하는 다양한 기술적인 용어와 방법들이 그 당시 다양하게 고민되던 방법 중의 하나였던 것도 기억나는 것 같다.

 

책의 초반에 IBM PC에 대한 설명이 먼저 기술된다. 굳이 왜 이런 내용이 필요할까 생각되었지만 책을 읽어가다보면 자연스럽게 IBM PC에 대한 하드웨어적인 개념 정리가 꼭 필요했다는 생각이 든다. 하드웨어적인 이해를 바탕으로 둠이 개발되었고 다양한 플랫폼에 둠이 동작하도록 이식하는 과정을 설명하는데도 꼭 필요한 개념이었던 것 같다.

 

아마 개발자라고 하더라도 이 책에서 기술되는 기술적인 부분을 제대로 이해할 수 있는 사람은 많지 않으리라 생각된다. 기술이 어렵다기 보다는 그 당시 사용한 기술이 지금은 고려 대상이 아닌 것이 많기 때문에 굳이 알 필요가 없는 것도 많기 때문이다. 하지만 1990년대 IT쪽 교육을 받은 사람이라면 대부분의 개념을 한번쯤 들어보거나 접해 본 경험이 있을 것이다. 새삼 그 당시 기억이 새록새록 떠오르며 많은 기억이 되살아나는 기분이었다.

 

지금 사용하지 않는 기술이라고 해서 의미가 없는 기술은 아니라고 생각한다. 기술 자체가 중요한 것이 아니라 그 기술을 활용한 개념과 문제에 대한 접근 방식을 제대로 아는 것이 더 중요하다고 생각한다. 그런 면에서 이 책은 많은 개발자들에게 마주한 문제를 어떻게 접근하고 해결해 나갈 수 있을지 좋은 방향을 제시해 준다고 생각한다. 개발자라면 한번쯤 이 책을 통해 다른 개발자들이 어떻게 새로운 접근법으로 소프트웨어를 개발해 왔는지 느껴 볼 수 있었으면 좋겠다.

 

과거의 추억을 되살리면서 재미있게 읽은 책이었다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

IMG_3630.jpg

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

게임개발자는 아니지만, 모바일 인디게임 앱을 만들어서 부수입을 올리고 싶은 생각도 해보고
프로그래머로써 게임을 개발한다는 것은 종합적인 예술행위라고 생각했기에
게임개발은 언제나 우러러 보여지는 일이었습니다.

둠은 저도 어렸을때 해왔던 게임이었습니다. 그 때에는 정말 막연히 친구들과 재밌는 게임이라고
그저 플레이 하는 것에 치중했었는데 프로그래머가 되고 나서는 이 게임이 얼마나 대단했는지 뒤늦게서야 보였습니다.
이 책은 당시의 둠 엔진의 내부를 설명하는 책입니다.

하지만 저에게는 이건 마치.. 위인전 같은 느낌이었습니다.
당시 22살의 나이에 이렇게 전세계에 영향을 미칠 게임을 만들고 무엇보다 그 당시의 하드웨어 환경에서
그 어려운 제약사항에서 이런 게임을 만들었다는 것이 지금 생각해도 대단합니다.

책 초반에 완전히 동일한 문장은 아니지만 아래와 같은 느낌으로 이야기가 나오던데 웃기면서도 슬프고 복잡한 마음이었습니다.
"디스크에 들어가는 소프트웨어를 2달마다 제공했어야해서 타이트한 개발 일정에 맞추려다보니
개발실력이 늘었고 그것이 이드 소프트웨어의 발명의 어머니였다."

결국 기획부터 배포까지 결과물을 만들어내는 사이클을 많이 할 수록 실력이 발전하는 지름길이구나 생각했습니다.
이건 실행으로써 뭔가를 만들어내는 예술, 공예, 디자인, 공학 등 에 모두 해당하는 부분이라 생각합니다.

게임엔진을 상세하게 해부하여 설명하는 책의 저자도 대단하지만
그 당시에 이런 퀄리티의 게임을 개발하고 오픈소스로 공개하는 존 카맥과 둠 개발자들의 재능과 생각이 존경스러웠습니다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
 
 
"둠이란 무엇인가?" 둠은 이드 소프트웨어 id Softwear라는 게임 회사에서 만든 게임의 이름이다.
 
이드 소프트웨어는 <울펜슈타인 3D Wolfenstein 3D>라는 1인칭 FPS 게임을 개발한 회사다.
 
<울펜슈타인 3D>는 출시 당시 대단한 인기를 얻었다.
 
<둠>은 <울펜슈타인 3D> 이후에 이드 소프트웨어의 두 번째 혁신이 들어간 게임이다.
 
 
1인칭 FPS 게임은 지금도 인기가 매우 많은 게임이다.
 
<배틀 그라운드>가 바로 1인칭 FPS 게임이다.
 
전 세계 수 많은 사람들이 <배틀 그라운드>를 PC와 모바일로 즐기고 있다.
 
<울펜슈타인 3D>와 <둠>은 <배틀 그라운드>의 조상격 게임이다.
 
<배틀 그라운드>의 사실적인 배경 및 캐릭터 묘사의 기초는
 
<울펜슈타인 3D>와 <둠>에서 시작되었다.
 
 
<<게임 엔진 블랙북 둠>>은 장인 정신으로 게임을 만들고 싶은 사람에게 필요한 책이다.
 
이 책에는 <둠>을 개발한 이드 소프트웨어 사람들 이야기와 게임 엔진에 대한 해설이다.
 
<둠>을 11개월 동안 개발할 때 발생한 에피소드와 개발할 때
 
사용한 컴퓨터에 대한 설명과 게임 디자인과 캐릭터 디자인에 대한 이야기가 있다.
 
 
이야기를 읽으면서 현재 게임 개발에 많이 사용되고 있는 언리얼 엔진이나 유니티가 없을 때
 
지금보다 열악한 성능의 컴퓨터로 게임 개발에 필요한 엔진들을 만들어가면서 게임을 구현한
 
이드 소프트웨어 개발자들이 대단하다는 생각이 들었다.
 
게임 엔진이 없었을 때 게임 엔진을 밑바닥에서 만들어가면서 부딪치는 문제들을 해결하는 그들을 보면서
 
게임 제작에 대한 장인정신의 일면을 엿보게 되었다.
 
 
어떤 대상이든 이야기를 통해서 우리는 대상을 잘 이해할 수 있다.
 
게임을 나쁘게 바라보고 못하게 하는 사람들이 게임을 개발한 이야기를 알게 되면 게임을 좋게 바라보게 된다.
 
처음에는 게임을 하면 게임의 이야기에 빠져서 새벽까지 게임을 한 적이 있다.
 
새벽까지 게임을 하고 난 것을 알아차렸을 때 허망한 마음이 들었다.
 
하지만 게임을 제작한 이야기와 게임 배경 이야기를 알게 되면서 게임을 다르게 바라보게 되었다.
 
게임을 하나의 예술 작품으로 바라보는 시선을 갖게 되었다.
 
게임을 통해 세계사를 알게 되었다.
 
게임을 통해서 얻은 역사 지식이 오랫동안 남아서 다른 사람에게 역사 이야기를 전달해 줄 수 있게 되었다.
 
게임은 학습을 도와준다.
 
 
<<게임 엔진 블랙북 둠>>은
 
다른 사람에게 즐거움을 주는 게임을 만들기 위한 자세와
 
게임 엔진의 기본을 알기 위한 사람들을 위한 책이다.
 
일독을 권한다.
 
 
 
 
 
 


 

 

8087.jpg

 

우선 둠이라는 게임을 다시 만날 수 있어서 좋았다.

일인칭 슈팅게임의 시작이라고 볼 수 있는 울펜슈타인3D의 다음 작품이었던 둠은 출시 당시 많은 사람들에게 인기가 있었고, 나도 종종 했던 게임이다. 전작 울펜슈타인3D 게임도 가끔 했었는데, 시간이 지나면 속이 너무 울렁거려서 게임을 중지할 수 밖에 없었던 기억이 난다. 게임 역사에 있어 중대하고 지속적인 영향을 미쳤던 둠을 다룬 책을 만났다.

'게임 엔진 블랙 북 : 둠'

게임 엔진 블랙 북 시리즈의 두번째 책으로 id소프트웨어에서 제작한 울펜슈타인3D 출시(1992년 5월)부터 1993년 12월까지 둠 개발에 대한 내용이 담겨있다. 그때 개발을 담당했던 소프트웨어 개발자들의 회고와 함께 어떻게 게임이 제작되었는지 자세히 설명되어 있다.

 

8088.jpg

 

책 속에는 약 30년 전의 게임 개발 환경과 하드웨어들에 대한 설명이다. 요즘은 모바일 게임이 많이 출시되지만, 예전에는 PC 게임, 콘솔 게임이 주류였고, 고사항의 하드웨어를 요구하는 게임이 많았다. 그것은 게임의 최적화를 위해 하드웨어에 대한 고려를 많이 했다는 얘기인데, 둠도 마찬가지였다. CPU부터 비디오 시스템, 사운드 시스템, 네트워크, 메모리 까지 모든 하드웨어에 대해 고려했고, 하드웨어의 한계를 넘어서기 위해 개발자들이 얼마나 많은 노력을 했는지 잘 드러나있다. 그리고 그 결과 둠이라는 명작이 출시될 수 있었다.

 

8089.jpg

 

개인적으로 실제로 사용해보지 못했지만, 넥스트 컴퓨터와 맥OS의 전신이라고 볼 수 있는 넥스트스텝을 만날 수 있어서 정말 좋았다. 둠 개발이 위의 환경에서 개발되었을 줄을 정말 몰랐다. 그 외에도 둠 개발에 참여한 14명의 팀원들이 작성한 코드와 사용한 도구들은 정말 대단한 것들이고, 둠이 정말 대단한 게임이었다는 것을 다시 한번 느꼈다. 

 

둠의 소스코드는 현재 github로 옮겨졌다고 한다.

관심있는 분이라면 한번 찾아가 보길 바란다. (git clone git@github.com:id-Software/DOOM.git)

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

​#게임엔진블랙북둠 #둠 #울펜슈타인3D #이드소프트웨어 #게임 #일인칭슈팅게임 #고전게임 #한빛미디어

안녕하세요.

전설의 게임 둠을 아시나요.

 

 

이 책은 이 게임이 어떻게 만들어졌는지, 1993년 게임이 만들어지기까지 하드웨어와 소프트웨어는 어떤 문제를 갖고 있었는지

그리고 그 문제를 어떻게 해결했는지를 담고 있습니다.

 

 

일단 둠이라는 게임을 해보신 분은 아시겠지만, 그렇지 않은 분은 둠이 무슨 게임인지 모를 것 같습니다.

일단 둠에 대한 평가는 1993년 전세계 비즈니스 생산성 저하의 가장 큰 원인이 될 것이라고 생각한 사람들이 많았습니다.

그 만큼 잘 만들어진 게임입니다.

 

 

둠이 성공할 수 있는 여러 원인이 있겠지만, 그 중에 가장 큰 성공 요인은 탄탄한 세계관이라고 합니다.

우울하고 공포스러운 분위기와 어두운 배경에서도 즐거운 게임을 할 수 있게 만들겠다는 목표를 가지고 제작한 게임이라고 해요.

 

 

 

 

 

 

 

 

둠은 인텔 80486이 권장 CPU였다고 하네요.

1993년에 500달라로 적당해 졌다고 하는데요.

당시의 기억으로 우리나라에서는 2배 이상의 가격으로 판매되었던 것 같아요.

 

 

당시에는 멀티 게임을 하기 위해서 널 모뎀 케이블을 가지고 2대의 컴퓨터를 연결했던 기억이 나네요.

이후에는 모뎀을 통해 네트워크 개념이 만들어졌고, 오늘의 인터넷으로 발전할 수 있었던 것 같아요.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

처음 책을 보면서 왜 이 책을 만들었을까? 하는 생각을 해봤습니다.

386, 486 개념을 들어본 50이 훌쩍 넘은 사람들이 공감하는 내용이라 책의 출판 의도가 궁금해졌습니다.

 

나름 내린 결론은,

컴퓨터 사양이 낮아 게임을 돌릴 수 없다고 생각했던 시대에 다양한 방법을 동원해서 게임을 만들었던 사람들의 창조성이 지금의 컴퓨터 게임 시장의 원동력이었다는 것이 아닐까.. 하는 생각을 해보게 됩니다.

 

기다리고 기다리던 둠 책이 드디어 왔다. "울펜슈타인 3D" 이후로 어떤 게임이 그리고 어떤 식으로 구성되어 출간될지 너무나 궁금했었는데, 그것도 시대를 풍미했던 둠이!! 아니다. 지금도 시대를 풍미하고 있는 (물론 다른 의미에서) !?이 관련 책으로 출간되어 이 기쁨을 이로다 표현할 수 없을정도이다.

 

필자가 알기론 둠은 대략 1993년 정도에 나온 게임인 것으로 알고있다. (필자가 상당히 어렸을 때였다.) 거의 30년 전에 개발되어 릴리스된 게임이라 할 수 있는데, 이는 어찌보면 엄청 옛날 게임이고 최신 게임들에 비하면 한참 보잘것없어 보일지도 모른다. 하지만 그 당시 둠을만들기 위해 '이드 소프트웨어' 개발자들이 시도했던 다양한개발 기법과 이를 해결하기 위한 창의적인 아이디어 그리고 시대적 배경들은 개발자들이라면 한 번쯤은 알아둘만한 필독 / 정석과 같은 이야기라고 생각되기에 필자는 해당 도서를 많은 분들께 추천드리고 싶다.

 

더욱이 게임을 개발하려는 사람들이라면 이 책을 꼭 읽어보시길 추천한다. 단순히소프트웨어적인 측면뿐만 아니라 하드웨어 그리고 트릭, 툴을 비롯한 게임 개발에 필요한 거의 모든 기초를이 책은 잘 기록하고 있다. (물론 CS에 관한 어느 정도지식을 베이스로 알아야 한다. 전혀 그런 지식 없이 이 책을 읽으면 책에 담고 있는 온 전의 의미를얻기엔 한계가 있을 것이다.) 옛날 기술이지만 결국 최신 기술들도 옛날의 기술들에서 파생되어 발전되고보완된 것들이다. 그렇기에 그 뿌리를 안다면 필시 좋은 개발자로 거듭나는 데에 좋은 양분이 될 것이라생각된다.

 

요즘은 게임을 개발하기에 참 편한 시대이다. unity unreal 이건 어느 정도 상용화된 게임엔진이 대중화되었고 더 이상 개발자가 하드웨어 스펙까지 세심하게 고려하여한 땀 한 땀 코드를 짜는 시대는 지났기 때문이다. (물론 하드웨어 핏 하게 최적화가 필요한 파트는여전히 존재한다.) 하지만 필자의 경험상 직접 게임 엔진을 만들어 본 사람과 이미 만들어진 게임엔진을이용하여 게임을 만드는 사람들의 식견과 견문은 엄청나게 차이가 난다. 당연히 자체 게임 엔진을 만들어게임을 구축해보고 릴리스까지 해본 사람의 지식과 견해가 대중화된 게임 엔진을 이용하여 게임 개발을 선호하는 사람들 보다 훨씬 기술적으로 고도화된것은 당연한 것일지 모른다.

 

그렇기에 게임 개발 나아가 소프트웨어 개발 엔진에 대해 관심 있는 사람들이라면 위 도서를 한 번쯤은 꼭 읽어보길권한다.

 

【책의 구성】 '게임 엔진 블랙 북:둠'의 책의 구성은 어떠한가.

 이 책은 총 7장으로 구성되어 있다. 2장은 하드웨어에 좀 포커싱 된 내용이 많고 3장의 경우 '넥스트'의역사와 이와 관련된 내용 전반을 다루고 있다. 4장은 둠을 개발했던 팀원들과 그 팀이 어떤 식으로 일을했었는지에 관해 다루고 있다. 5장은 개발에 관한 내용들이다. 가장핫한 대목이며 아마도 개발자들이 가장 많은 테크니컬 한 배움을 얻어 갈 수 있는 장이라고 생각된다. 따라서다른 장들은 몰라도 꼭 5장은 딮하게 살펴보길 권장한다.(5장만대략 80장 정도 되는데, 이 책이 총 200장인 것을 볼 때, 얼마나 중요한 장인지 장수만으로도 충분히파악이 가능하다.). 6장은 둠과 콘솔 게임기 간의 역사를 설명하고 있다. 둠을 다양한 플랫폼에 이식하기 위해 어떤 일들이 있었는지 해당 장에 자세히 설명되어 있다. 7장은 이 책 전반에 걸친 에필로그가 쓰여있다.

 


 

2파트 : IMB PC

 둠이 개발될 당시의하드웨어들의 환경을 잘 설명한 장이다. 현재 최신 스펙의 장비들과 기술에 비하면 한참 보잘것없는 스펙일것이다. 하지만 필자의 기억으로 그 당시에 책에 쓰여있는 기술들은 획기적인 접근이었으며 가장 진보되고최신의 기술이었다. 또한 IT 기술의 폭발적인 성장이 이뤄졌던시기이기도 했었다. 하루가 다르게 CPU 성능과 네트워크성능 그리고 램, GPU 등이 발전했던 시대이기도 했다. (필자가알기론 최근에 들어서야 무어의 법칙이 깨진 것으로 알고 있다. Intel 직원들에게 참으로 숙연해질수밖에 없는 것 같다.)

 

뿐만 아니라 조금은 생소할 수 있지만 보호 모드와 리얼 모드 간 에어 플리케이션을 동작시키기 위해 어떤 부분들이고려되었는지 등도 자세히 설명되어 있다. 그만큼 둠은 과도기 시대에 한 획을 그은 역사라 할 수 있는부분이 여실히 드러난 파트라 할 수 있다.

 


 

5파트 : 소프트웨어: idTech 1

 이 책의 가장 핵심인부분이다. 다른 덴 안보더라도 이 장은 꼭 봐야 한다. 둠의소스코드에 관한 히스토리 (공개 역사), 개발 아키텍처, 랜더러 구현 기법, 입력, 충돌감지, AI, 네트워크 등. 게임을 개발함에 사용되었던 창의적인아이디어를 비롯한 수많은 기법들이 설명되어 있다. (심지어 플레이어들을 효과적으로 속일 수 있는 팁도들어있다!) 예시에 나온 코드들은 C와 어셈블러이지만 CS에 대한 학부 이상의 지식을 갖추었다면 해당 장의 내용들을 이해함에 있어 큰 어려움은 없을 것이라 생각된다.

 

해당 장을 읽을 때 필자는 몹시 기분이 좋았는데, 왜냐하면 마치 지금눈앞에서 둠의 개발과정이 펼쳐지는 것처럼 핵심들만 잘 추려서 생생하게 표현했기 때문이다. 더욱이 예시로사용된 그림들과 '토막 상식'이라는 짬짬이 쓰여있는 칼럼들의내용들은 깨알 같지만 정말로 많은 생각점을 주므로 꼭 읽어보길 권장한다.

 

코드의 경우 추상화하여 각 단계에서 어떤 식으로 수행되는지를 설명하고 있으므로 머리로 한번 그려가며 책을 따라가면훨씬 와닿는 부분이 많을 것이라 생각된다. (가장 베스트는 이 책을 읽기 전에 간단한 자신만의 게임엔진을 개발하고 그 엔진을 이용해서 게임을 만들어 본 후에 이 책을 읽어보라는 것이다. 그러면 당시개발자들이 얼마나 천재였는지 확실히 깨달을 수 있다.)

 


 

【 "게임 엔진 블랙 북:둠"을 읽고서…….】

 '모든 지식은 무엇인가에뿌리를 두고 있다.' 옛날에 어떤 책인가에서 필자가 읽었던 문구이다.그렇다 모든 지식은 무엇이 되었건 뿌리를 가지고 있다. 의학도, 공학도, 금융 학도, 법학도결국 타고 타고 올라가면 그 시작이 되는 무엇인가가 있다는 것이다. 게임 개발도 그러하다. 최초의 게임은 픽셀과 같은 도트 게임이었고 이 게임이 2D로 진화하고그것이 3D가 되어 지금에 이른 것은 어찌 보면 자연적인 흐름일지 모른다. 다만 자연적인 흐름이 이렇다 하여 가장 최신의 기술에만 목메어있다면 이는 결국 수박의 겉핥기에 불과한 처사일것이라 생각된다. (3D도 픽셀로 이뤄졌다는 것을 안다면 말이다.!)

 

요즘과 같이 화려한 그래픽에 비하면 옛날에 나온, 적어도 20~30 년 전에 나온 게임들은 한없이 투박해 보이는 것은 부정할 수 없는 사실이다. 하지만 그 당시 개발자들이 생각했던 아이디어와 창의력은 지금 못지않게 훨씬 다채롭고 독창적이며 기발한 것들이많다.

 

좋은 개발자가 되기 위해서는 둠의 핵심 개발자들처럼 하루아침에 궁극의 창의력을 뚝딱 발휘할 수 있어야 할지 모른다. 만약 이런 능력을 가졌다면 단시간에 최고의 개발자로써 인정받게 되는 것은 따놓은 당상일 것이다. 하지만 대부분의 개발자(필자를 포함한)들은 그렇지 못한다. 그렇기에 우리는 그들이 남겼던 흔적들을 자세히곱씹으며 그들이 했던 일들을 따라 하고 몸으로 체득하여 습관화해야 한다. 필자가 나름 이 필드에 오랫동안있어보니 이 필드도 넘사벽인 인재가 있긴 하지만 꾸준한 노력으로 그와 비슷한 능력까지 끌어올린 사람들을 여럿 보았다. 즉 노력을 하면 적어도 용은 못 그려도 이무기 정도는 그릴 수 있다는 것이다.

 

개발자라는 직업은 특히, 게임 개발자라는 직업은 어찌 보면 종합 예술에해당하는 직업이다. 사용자들의 재미를 이해하고 그들의 피드백을 적극 수용하여 우리가 만든 세계에 그들의마음과 즐거움을 녹여내야 하므로 이것이 예술이 아니라면 무엇이겠는가?

 

그렇기에 만약 게임을 개발해본 경험이 없는 개발자라면 간단한 토이 프로젝트로라도 갤러그 하나를 만들어보길 권한다. 갤러그 게임이 단순해 보이지만 그 속에 숨어있는 철학과 아이디어는 과히 엄청나다. 그렇기에 갤러그를 만든 후의 본인을 돌아보면 확실히 갤러그를 만들기 전의 자신과 많은 면에서 달라졌다는 것을알게 될 것이다.

 

이번에 리뷰한 둠은 게임사에 획을 그은 그 뿌리를 파악하기에 아주 좋은 ''임에 틀림없다.

 

 

"하드웨어의 한계를 극복하기 위한 험난한 여정, 이드 소프트웨어의 엔진 개발을 파헤치다."

 

 

이 책은 <둠>이라는 게임의 개발기를 그리고 있다. 이 게임은 꽤 오랜 역사를 가지고 있는데, 그렇기에 하드웨어의 발달과 발맞춰가며 최대한의 기능을 끌어낼 필요가 있었음을 책에서 자세하게 설명한다. 이 부분에서 하드웨어 환경에 따라 구현하게 되는 sw가 달라진다는 점을 알게 되었다. 그래서 게임 개발을 위해 하드웨어에 대한 깊은 이해도 필요하겠다, 라는 생각이 들었다.

 

 

'게임 엔진 블랙 북: 둠'이라는 책을 처음 받아보았을 때, 마치 마법서와 같은 느낌을 받았다. 그러나 내용은 결코 쉽지만은 않았다. 개발을 공부하고는 있지만 비전공자로서, 아마 이 책에서 이해한 부분은 거의 30%정도 되는 것 같다. 그럼에도 끝까지 흥미롭게 책을 읽을 수 있었는데 그 이유는 그림자료가 거의 매 페이지 있을만큼 풍부했고 자세했기 때문인 것 같다.

 

 

그래서 한 편으로는 더 공부를 해서 이 책에 나오는 내용을 다 이해할 수 있게 된다면 굉장히 재밌을 것 같았다. 흥미로운 책이다.

 

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다



#후기

 

미국 학부모들의 적이라고 부를만큼 엄청난 붐을 가져온 게임이다.

명작 중의 명작이고 지금까지도 시리즈가 이어져 오고있는 전통이면서 세련된 기술력을 자랑한다.

그러한 둠이 어떻게 나왔고 어떤 어려움이 있었고 어떠한 사회상황이었는지

모든 것을 알려준다.

 

불가능해보이는 기술을 어떻게 극복했는지 어떤 마음을 가지고 임했는지

그러한 것들을 배울 수 있는 책이라고 생각한다.

 

하드웨어의 한계를 깨려는 노력을 하지 않았더라면 우리는 이제서야 콜오브듀티 모던워페어 시리즈를 하고 있을지도 모른다.

 

게임분야에 관심이 있다면 특히 개발쪽에 관심이 있다면 이 책을 교양서적으로 여기고 볼만 하다고 생각한다.

우선 내가 그렇게 생각한다.



게임 엔진 블랙 북: 둠


전설의 게임 ‘둠’ 은 어떻게 탄생했는가를 다루는 그야말로 한 편의 장대한 논픽션 드라마 또는 다큐멘터리를 보는 듯한 책이었다. 이미 게임 엔진 블랙 북 시리즈로 울펜슈타인 3D가 나왔고 두번째로 둠을 다루는 이 책이 출간되었다. 


둠으로 말할 것 같으면 당대 거의 모든 PC에 설치될 만큼 큰 인기를 끌었고, 최근 둠 이터널에 이르기까지 게임 역사에 중대하고 지속적인 영향을 미쳤다고 평가받고 있다. 이 책은 15년 차 베테랑 개발자이자  구글 본사에서 소프트웨어 엔지니어로 일하고 있는 파비앙 상글라르을 쓴 책으로 이번에 국내에 번역되어 소개되고 있다. 

 

KakaoTalk_20210510_185839793.jpg

 

KakaoTalk_20210510_185839993.jpg

 

KakaoTalk_20210510_185840404.jpg

 

KakaoTalk_20210510_185842531.jpg

 


 

주로 이드 소프트웨어의 천재 개발자들이 직면한 다양한 문제 및 문제를 해결하기 위해 사용한 공학적인 방법을 엿볼 수 있는 내용들이 이어지고 누군가의 ‘학점, 인간관계, 심지어는 직업’까지 위태롭게 만들었던 위험하고도 찬란한 게임 둠의 비밀을 파헤쳐보는 시간이 되었다. 


이 책은 한때 마법으로 여겨졌던 둠 개발에 사용한 소프트웨어 내부를 뜯어보고, 출시 이후 다양한 콘솔로 둠을 이식한 과정을 추적한다. 개발 과정의 비하인드 스토리와 인터뷰가 읽는 재미를 더한다. 이드 소프트웨어의 개발자들은 열악한 환경에도 불구하고 텍스처 매핑, 직각이 아닌 벽, 원근에 맞춘 조명 감소 효과, 가변 높이 바닥과 천장, 주변 환경과의 상호작용, 팔레트 변환, 네트워크로 연결된 다중 사용자 지원 등 게임 기술의 ‘최첨단’을 선도했다. 다른 누구도 가보지 않은 곳에 닿기 위해 그들은 밤낮으로 일했고, 바닥에서 잠들었으며, 험한 강을 건넜다.


모 아마존 독자의 평이 인상적이었다. 

 

존 카맥은 소프트웨어 개발의 영웅입니다. [둠]을 플레이하고 놀라 자빠질 뻔했던 추억이 기억납니다. 당시의 열악한 하드웨어 환경에서 적절한 원근감과 텍스처 매핑을 구현했다는 게 정말 놀랍습니다. 이 책은 코드 작동 방식에 대한 세부 사항뿐 아니라 흥미로운 역사까지 설명합니다. 『게임 엔진 블랙 북: 울펜슈타인 3D』의 좋은 동반자이기도 합니다. 1990년대 초의 게임 개발 환경에 관심이 있는 모두에게 이 책을 추천합니다.


결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
게임 엔진 블랙 북 : 둠
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
게임 엔진 블랙 북 : 둠
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
게임 엔진 블랙 북 : 둠
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실