목차

1부 기초 1장 소개 ___1.1 게임 팀 구성 ___1.2 게임이란? ___1.3 게임 엔진이란? ___1.4 장르별 게임 엔진 ___1.5 현존하는 게임 엔진 ___1.6 런타임 게임 아키텍처 ___1.7 툴(도구)과 자원 파이프라인 2장 도구 ___2.1 버전 컨트롤 ___2.2 마이크로소프트 비주얼 스튜디오 ___2.3 프로파일링 툴 ___2.4 메모리 누수와 오염 감지 ___2.5 기타 툴 3장 게임을 위한 소프트웨어 엔지니어링 기초 ___3.1 C++ 개념과 올바른 사용법 ___3.2 C/C++에서 데이터와 코드, 메모리 ___3.3 에러 감지와 처리 4장 게임에 사용되는 3D 수학 ___4.1 3D 문제를 2D로 풀기 ___4.2 점과 벡터 ___4.3 행렬 ___4.4 사원수 ___4.5 각 회전 변환 표현 간 비교 ___4.6 기타 유용한 수학적 개념 ___4.7 하드웨어 가속 SIMD 연산 ___4.8 난수 생성 2부 로우레벨 엔진 시스템 5장 엔진 지원 시스템 ___5.1 하부 시스템 시작과 종료 ___5.2 메모리 관리 ___5.3 컨테이너 ___5.4 문자열 ___5.5 게임 설정 6장 리소스 시스템과 파일 시스템 ___6.1 파일 시스템 ___6.2 리소스 매니저 7장 게임 루프와 리얼타임 시스템 ___7.1 렌더링 루프 ___7.2 게임 루프 ___7.3 게임 루프 구조의 형태 ___7.4 가상 타임라인 ___7.5 시간 측정하는 방법과 처리하는 방법 ___7.6 멀티프로세서 게임 루프 ___7.7 네트워크 멀티플레이어 게임 루프 8장 휴먼 인터페이스 장치 ___8.1 휴먼 인터페이스 장치의 종류 ___8.2 HID와의 인터페이스 ___8.3 입력의 종류 ___8.4 출력의 종류 ___8.5 게임 엔진의 HID 시스템 ___8.6 휴먼 인터페이스 장치들의 실제 9장 디버깅과 개발 도구 ___9.1 로그 기록과 추적 ___9.2 디버그 정보 그리기 기능 ___9.3 인게임 메뉴 ___9.4 인게임 콘솔 ___9.5 디버그 카메라와 게임 일시 정지 ___9.6 치트 ___9.7 스크린샷과 무비 캡처 ___9.8 인게임 프로파일링 ___9.9 인게임 메모리 상태와 누수 감지 3부 그래픽과 모션 10장 렌더링 엔진 ___10.1 깊이 버퍼를 이용한 삼각형 래스터화의 기초 ___10.2 렌더링 파이프라인 ___10.3 고급 조명 기법과 전역 조명 ___10.4 시각 효과와 오버레이 ___10.5 더 읽을거리 11장 애니메이션 시스템 ___11.1 캐릭터 애니메이션의 종류 ___11.2 뼈대 ___11.3 포즈 ___11.4 클립 ___11.5 스키닝과 행렬 팔레트 생성 ___11.6 애니메이션 블렌딩 ___11.7 후처리 ___11.8 압축 기법 ___11.9 애니메이션 시스템 아키텍처 ___11.10 애니메이션 파이프라인 ___11.11 액션 상태 기계 ___11.12 애니메이션 컨트롤러 12장 충돌과 강체 역학 ___12.1 정말 게임에 물리가 필요해? ___12.2 충돌/물리 미들웨어 ___12.3 충돌 검출 시스템 ___12.4 강체 역학 ___12.5 물리 엔진과 게임 통합 ___12.6 앞으로의 기술: 고급 물리 기능 4부 게임플레이 13장 게임플레이 시스템 기초 ___13.1 게임 월드의 구성 ___13.2 동적 구성 요소 구현: 게임 객체 ___13.3 데이터 주도 게임 엔진 ___13.4 게임 월드 에디터 14장 런타임 게임플레이 기반 시스템 ___14.1 게임플레이 기반 시스템의 컴포넌트 ___14.2 런타임 객체 모델 구조 ___14.3 월드 덩어리 데이터 형식 ___14.4 게임 월드의 로딩과 스트리밍 ___14.5 객체 참조와 월드 질의 ___14.6 실시간 게임 객체 업데이트 ___14.7 이벤트와 메시지 전달 ___14.8 스크립트 ___14.9 하이레벨 게임 흐름 5부 결론 15장 추가 사항 ___15.1 다루지 않았던 엔진 시스템 ___15.2 게임플레이 시스템 참고 문헌