DIRECTX 게임 데모 프로그래밍 (DirectX 기초부터 캐릭터 애니메이션과 셰이더 프로그래밍까지)

DIRECTX 게임 데모 프로그래밍 (DirectX 기초부터 캐릭터 애니메이션과 셰이더 프로그래밍까지)

$28.95
저자

마이클 플레노프

저자 마이클 플레노프

C++와 델파이 프로그래밍, 해킹, 코드 최적화를 전문으로 하는 기술전문 저술가로, SQL Server와 델파이, C++, 시스템 프로그래밍, 캐드 개발, 최적화 기법, 코드 리서치, 데이터베이스 생성 등의 수많은 주제를 다뤄왔다. 『Hacker Linux Uncovered』와 『Hackish C++ Pranks & Tricks』, 『Hackish PC Pranks & Tricks』, 『Hackish PHP Pranks & Tricks』 등 많은 책을 저술한 저자다.


역자 안병규

서울대학교 컴퓨터공학과를 졸업하고 ㈜넥슨, ㈜제이투엠, ㈜네오위즈 등에서 게임을 개발했다. 서울과학고 재학 중에 국제정보올림피아드에서 금메달을 수상하고, 서울대학교 재학 중에는 세계대학생프로그래밍대회에 출전해 아시아 지역 예선 1위를 하기도 했다. 6년간의 게임 회사 생활을 정리하고 미국 존스홉킨스 대학 박사과정으로 자연언어처리를 공부하고 있다. 번역서로는 『GREAT CODE 제2권 로우레벨을 고려한 프로그램 최적화』가 있다.


목차

01장 데모와 DirectX 소개
1.1 데모의 역사
1.2 DirectX 소개
1.3 DirectX의 설치와 설정
1.4 최적화의 소개
제1규칙
제2규칙
제3규칙
제4규칙
제5규칙
제6규칙
제7규칙
제8규칙
제9규칙
1.5 Direct3D 초기화
1.6 DirectDraw 초기화
1.7 리소스 해제

02장 사용된 함수
2.1 DirectDraw에서의 이미지 로딩
2.2 메시
2.3 메시 표시법

03장 DirectX 최적화
3.1 그래픽 최적화
3.2 서피스 빨리 채우기
3.3 선 그리기
3.4 빠른 이미지 로딩
3.5 출력 영역을 수동으로 제어
3.6 직접 액세스 최적화
3.7 3D 그래픽 최적화
3.8 3D 최적화 함수

04장 2D 이펙트
4.1 착시현상
그레이디언트 효과
애니메이션
4.2 선을 사용한 효과
그물 효과
직사각형의 나선 효과
직사각형의 터널 효과
4.3 직선을 사용하지 않은 그래픽
불꽃놀이 효과
염산 효과
4.4 이미지를 이용한 이펙트
투명 효과
확대 효과
정사각형 렌즈
원형 렌즈
볼록 렌즈
4.5 프랙탈

05장 3D 이펙트
5.1 글로우 효과
초기화
셰이프 표시
마지막 단계
5.2 포인트 텍스처
5.3 텍스처에 그리기
준비
초기화
텍스처 애니메이션
5.4 볼링핀
5.5 이펙트
5.6 정점 셰이더 소개
5.7 간단한 셰이더
셰이더 코드 작성
정점 셰이더 사용
5.8 셰이더에서의 조명 제어
법선
셰이더
5.9 무중력 덩어리
5.10 픽셀 셰이더
5.11 하이라이트 효과
5.12 심전도 효과
5.13 불 효과
모닥불
불꽃 대포알
불타는 용암
5.14 모핑
5.15 번개 효과
5.16 셰이더에서의 정육면체 텍스처 사용법
5.17 객체별 셰이더

06장 엔진
6.1 엔진의 구조
6.2 객체 엔진
6.3 게임 엔진
6.4 엔진의 실행
6.5 그림자
6.6 광원이 여러 개인 경우
6.7 골격 애니메이션
6.8 메시 저장 포맷
6.9 골격 애니메이션의 프로그래밍 기초
6.10 메시와 골격을 .x 파일에서 읽어들이기
6.11 객체의 파싱
6.12 메시 읽어들이기
6.13 자식 원소 읽어들이기
6.14 프레임 검색
6.15 골격 갱신
6.16 메시 갱신
6.17 골격 애니메이션
6.18 애니메이션을 .x 파일에 저장하기
6.19 애니메이션을 .x 파일에서 읽어들이기
필요한 클래스
파일 파싱하기
키 파싱하기
6.20 애니메이션의 사용
6.21 충돌
점과 평면의 충돌
점과 직육면체의 충돌
점과 구의 충돌
구와 구의 충돌
6.22 게임에서의 충돌
6.23 충돌검사 구현 예제
6.24 더 깊이 파고들기
6.25 마지막 조언

맺음말
찾아보기
부록 CD 소개

출판사 서평

< 요약 >

DirectX 게임 프로그래밍에서 비주얼 이펙트를 극대화하는 법과 그래픽을 최적화하는 법을 다루는 이 책은 최신 C++ 기술과 기법에 대한 실전적인 입문서다. DirectX의 기초, 2D 그래픽스, 3D 그래픽스, 프로그램 최적화, 골격 애니메이션, 정점 셰이더와 픽셀 셰이더 프로그래밍, 게임 엔진의 얼개에 이르기까지 다양한 주제를 다루고 있다.


< 소개 >

이 책은 C++와 DirectX를 이용해 데모 클립을 개발하는 방법을 다루고 있다. 이 책에서 다룰 주제와 기술, 기법을 이해하려면 데모와 데모신(demoscene)에 대해서 알아야 한다. 데모란 그래픽 이펙트에 때로는 사운드 이펙트를 곁들인 짧은 프로그램 또는 프로그램의 코드 조각을 말한다. 데모신이란 데모를 만들면서 생긴 일종의 규칙이나 법칙을 모두 아우른 문화적 총체를 말한다. 데모 개발팀들은 데모 파티에 모여서 자신의 창작품을 관객의 판단에 내맡기곤 한다. 데모를 만드는 것은 개인이 아니라 팀이다. 오늘날 혼자의 힘으로 멋있는 데모를 만든다는 것은 불가능에 가깝다. 데모를 만드는 데는 최소한 프로그래머와 디자이너, 음악가 등 세 명의 전문가가 필요하다.

그러나 이와 같은 설명만으로는 데모신의 모든 의미를 다 전달할 수가 없다. 데모신을 완전히 이해하려면 데모신이라는 문화가 생기고 발전한 역사를 이해해야 한다. 그래야만 정말로 유별난 데모신이라는 문화와 이 책에서 다루려는 내용의 정수를 이해할 수 있을 것이다.

현대적인 의미의 데모신은 게임 산업과 많은 공통점이 있다. 예전에 데모신을 만들던 프로그래머 중에 많은 수가 게임 개발자가 됐기 때문이다. 반대의 경우도 물론 있다. 게임 프로그래머가 새로운 영역에서의 자아실현을 위해 데모를 만드는 데 뛰어들거나 그래픽스 알고리즘을 생각하고 코드를 최적화하면서 머리 회전을 시키기 위해서 또는 게임의 홍보를 위해서 데모를 만드는 경우도 있다.