게임 엔진 블랙 북: 울펜슈타인 3D

게임 엔진 블랙 북: 울펜슈타인 3D

$35.00
Description
최초의 FPS 게임 〈울펜슈타인 3D〉 엔진 개발의 모든 것
386 시절 PC 하드웨어는 파편화에 시달렸고 여러 한계가 존재했지만, 이드 소프트웨어는 이를 극복하고 〈울펜슈타인 3D〉로 FPS의 문을 활짝 열어젖혔다. 이 책은 〈울펜슈타인 3D〉가 만들어진 모든 과정을 밝히며 게임 엔진 소스를 낱낱이 파헤친다. 당시의 하드웨어와 개발 환경부터, 엔진 개발 중 직면한 다양한 문제와 해결 방안까지 체계적으로 정리했다. 전설이 된 개발자들이 온갖 제약 아래에서도 게임성을 높이기 위해 설계와 구현을 어떻게 했는지 생생히 확인할 수 있다.
저자

파비앙상글라르

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

목차

머리말(존카맥)
머리말(톰홀)
머리말(존로메로)
이책에대하여

Chapter0프롤로그

Chapter1들어가며

Chapter2하드웨어
2.1CPU:중앙처리장치
__2.1.1개요
__2.1.2인텔80386
__2.1.3부동소수점
2.2램
__2.2.1도스제한
__2.2.2악명높은리얼모드:1MiB램제한
__2.2.3악명높은리얼모드:16비트세그먼트주소지정
__2.2.4확장메모리
2.3비디오
__2.3.1비디오어댑터역사
__2.3.2VGA아키텍처
__2.3.3VGA2차원이라는광기
__2.3.4VGA모드
__2.3.5VGA프로그래밍:메모리매핑
__2.3.6VGA프로그래밍:모드12h
__2.3.7VGA프로그래밍:모드13h
__2.3.8더블버퍼링의중요성
2.4오디오
__2.4.1애드립
__2.4.2사운드블라스터
__2.4.3사운드블라스터프로
__2.4.4디즈니사운드소스
2.5버스
2.6입력
2.7요약

Chapter3팀
3.1조직
3.2프로그래밍
3.3그래픽애셋
3.4애셋워크플로
3.5지도
3.6오디오
__3.6.1사운드
__3.6.2음악
3.7배포

Chapter4소프트웨어
4.1소스코드얻기
4.2첫만남
4.3큰그림
__4.3.1펼쳐진루프
4.4아키텍처
__4.4.1메모리관리자(MM)
__4.4.2페이지관리자(PM)
__4.4.3비디오관리자(VL&VH)
__4.4.4캐시관리자(CA)
__4.4.5사용자관리자(US)
__4.4.6사운드관리자(SD)
__4.4.7입력관리자(IN)
4.5시작
__4.5.1사인온
__4.5.2VGA문제해결
__4.5.3엄청난대학살
4.6메뉴단계:2D렌더러
4.7액션단계:3D렌더러
__4.7.1프레임의수명
__4.7.23D프레임의수명
__4.7.33D설정
__4.7.4화면지우기
__4.7.5CPU문제해결
__4.7.6어안효과교정
__4.7.7벽그리기
__4.7.8스프라이트그리기
__4.7.9무기그리기
__4.7.10인공지능
4.8오디오와심장박동
__4.8.1IRQ와ISR
__4.8.2PIT와PIC
__4.8.3심장박동
__4.8.4오디오시스템
__4.8.5음악
4.9사운드효과
__4.9.1사운드효과:애드립
__4.9.2디즈니사운드소스시스템:PCM
__4.9.3사운드블라스터시스템:PCM
__4.9.4사운드블라스터프로시스템:스테레오PCM
__4.9.5PC스피커:사각파
__4.9.6PC스피커:PCM
__4.9.7PC스피커:PWM
4.10사용자입력
__4.10.1키보드
__4.10.2마우스
__4.10.3조이스틱
4.11속도높이는기법
__4.11.1cos/sin테이블참조
__4.11.2피즐페이드
__4.11.3팔레트
4.12의사난수생성기
4.13성능

Chapter5속편
5.1운명의창

Chapter6이식
6.1슈퍼닌텐도
6.2재규어
6.3아이폰
__6.3.1아이폰개발노트(존카맥)
6.4울펜슈타인3D-VR

Chapter7에필로그
7.1그들은지금어디에있을까?

부록A〈울펜슈타인3D〉이전
부록BXMS와EMS
부록C640KB장벽
부록DCONFIG.SYS와AUTOEXEC.BAT
부록E팬들의이메일
부록F존카맥의출시노트
부록G20주년기념해설

출판사 서평

386의한계를극복하고전설이된최초의FPS〈울펜슈타인3D〉
이드소프트웨어천재개발자들의엔진개발비법을파헤치다

오래된게임개발자들사이에선CPU가달린기기를보기만하면〈울펜슈타인3D〉를포팅할수있을지부터떠올린다는이야기가있다.당시로서혁신적인3D게임플레이와부드러운애니메이션을선보이며FPS의기념비적인효시로평가받는이게임의탄생뒤에는,열악한386PC하드웨어의제약을극복하기위해소프트웨어를한계까지밀어붙인이드소프트웨어의천재개발자들이있었다.

이책은〈울펜슈타인3D〉가누구에의해어떻게만들어졌는지모든과정을낱낱이공개하며,수많은그림과함께게임엔진소스를파헤치고분석한다.당시하드웨어와개발환경부터,엔진개발중직면한다양한문제와해결방안까지체계적으로정리했다.더블버퍼링없는VGA,정수연산만가능한CPU,파편화된사운드카드등당시386PC하드웨어에서초당70프레임을뽑는게임을만들기란지극히어려웠다.이드소프트웨어개발자들이이러한한계를어떻게극복하여장점으로승화했는지,엔진설계결정과개발과정,그리고‘트릭’에가까운프로그래밍기법까지,이책은모든디테일을정교하게추적하고기록했다.

주어진제약내에서최대한의성능을이끌어내는것은모든개발자의과제다.하드웨어가아무리발달해도이목마름은멈추지않는다.심지어사무기기에불과했던386에서부드럽게돌아가는3DFPS를꿈꿨던사람들이있다.대화상자하나띄우는데에도프레임워크의온갖보일러플레이트코드에매몰되는오늘날,우리는게임개발의핵심이무엇인지잊고있는것은아닐까?불가능해보이는제약속에서도타협하지않고게임성을높이기위해갖은방법을동원해꿈을현실로만든하드코어개발자들의개발비법에서통찰을얻기바란다.

[추천사]
초보개발자가읽기좋은훌륭한책입니다.현대게임의프로그래밍방법은가르쳐주지않지만,게임엔진전반에대한가치있는통찰력과기초를제공합니다.〈울펜슈타인3D〉가만들어졌을때PC는사무용비즈니스기계일뿐이었어요.이드소프트웨어는〈울펜슈타인3D〉를만들기위해많은기술을개발하고요령을사용했고,저자는이모든비밀들을조명합니다.
-Mr.J.MCCAFFERTY(아마존독자)

그저놀랍습니다!어떻게386시대에존재했던수많은장벽을깨뜨리고문제를해결했는지자세히묘사한책입니다.이드소프트웨어의팀원들과함께게임을개발하고있는듯한기분이었죠.이책을읽으면1990년대의FPS,불가능에가까웠던게임엔진에대한지식과더넓은시야를가질수있습니다.
-Chrism(아마존독자)

〈울펜슈타인3D〉는물론이고DOS의모든즐거움과함께했던어린시절이떠오릅니다.그야말로환상적이었던추억의게임을뜯어보며추억에잠겼죠.게임을더자세히이해하고깊이느끼고싶은사람이라면이책을읽으세요.〈둠〉에대한비법서도코앞에다가왔다고기대하겠습니다.
-John(아마존독자)