책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 게임 프로그래밍
· ISBN : 9788956741673
· 쪽수 : 495쪽
· 출판일 : 2004-02-16
책 소개
목차
제1장 Direct3D 초기화
1.1 Direct3D 개요
1.1.1 REF 장치
1.1.2 D3DDEVTYPE
1.2 COM
1.3 약간의 준비
1.3.1 표면(surface)
1.3.2 멀티 샘플링
1.3.3 픽셀 포맷
1.3.4 메모리 풀
1.3.5 스왑 체인과 페이지 플리핑
1.3.6 깊이 버퍼
1.3.7 버텍스 프로세싱
1.3.8 장치 특성
1.4 Direct3D 초기화하기
1.4.1 IDirect3D9 인터페이스 얻기
1.4.2 하드웨어 버텍스 프로세싱 확인하기
1.4.3 D3DPRESENT_PARAMETERS 구조체 채우기
1.4.4 IDirect3DDevice9 인터페이스 만들기
1.5 예제 애플리케이션: Direct3D 초기화
1.5.1 d3dUtility.h/cpp
1.5.2 예제 프레임웍
1.5.3 예제: D3D Init
1.6 요약
제2장 렌더링 파이프라인
2.1 모델 표현
2.1.1 버텍스 포맷
2.1.2 삼각형
2.1.3 인덱스
2.2 가상 카메라
2.3 렌더링 파이프라인
2.3.1 로컬 스페이스
2.3.2 월드 스페이스
2.3.3 뷰 스페이스
2.3.4 후면 추려내기
2.3.5 조명
2.3.6 클리핑
2.3.7 투영
2.3.8 뷰포트 변환
2.3.9 래스터라이즈
2.4 요약
제3장 Direct3D에서의 드로잉
3.1 버텍스/인덱스 버퍼
3.1.1 버텍스와 인덱스 버퍼 만들기
3.1.2 버퍼 메모리에 접근하기
3.1.3 버텍스 버퍼와 인덱스 버퍼에 대한 정보 얻기
3.2 렌더 상태
3.3 드로잉 준비
3.4 버텍스/인덱스 버퍼를 이용한 드로잉
3.4.1 IDirect3DDevice9::DrawPrimitive
3.4.2 IDirect3DDevice9::DrawIndexedPrimitive
3.4.3 장면의 시작/끝
3.5 D3DX 기하 물체
3.6 예제 애플리케이션: 삼각형, 입방체, 주전자, D3DXCreate*
3.7 요약
제4장 컬러
4.1 컬러 표현
4.2 버텍스 컬러
4.3 셰이딩
4.4 예제 애플리케이션: 컬러를 입힌 삼각형
4.5 요약
제5장 조명
5.1 조명의 요소
5.2 재질
5.3 버텍스 법선
5.4 광원
5.5 예제 애플리케이션: 조명
5.6 부가적인 예제들
5.7 요약
제6장 텍스처링
6.1 텍스처 좌표
6.2 텍스처의 작성과 활성화
6.3 필터
6.4 밉맵
6.4.1 밉맵 필터
6.4.2 Direct3D에서 밉맵 이용하기
6.5 어드레스 모드
6.6 예제 애플리케이션: 텍스처를 입힌 사각형
6.7 요약
제7장 블렌딩
7.1 블렌딩 방정식
7.2 블렌드 인수
7.3 투명
7.3.1 알파 채널
7.3.2 알파 채널 원본 지정하기
7.4 DirectX 텍스처 툴로 알파 채널 만들기
7.5 예제 애플리케이션: 투명
7.6 요약
제8장 스텐실
8.1 스텐실 버퍼 이용하기
8.1.1 스텐실 버퍼 요청하기
8.1.2 스텐실 테스트
8.1.3 스텐실 테스트 제어하기
8.1.4 스텐실 버퍼 갱신하기
8.1.5 스텐실 쓰기 매스크
8.2 예제 애플리케이션: 거울
8.2.1 반사를 위한 수학
8.2.2 거울 구현의 개관
8.2.3 코드와 설명
8.3 예제 애플리케이션: 평면 그림자
8.3.1 평행 그림자
8.3.2 점 조명 그림자
8.3.3 그림자 행렬
8.3.4 더블 블렌딩을 막기 위한 스텐실 버퍼 이용
8.3.5 코드와 설명
8.4 요약
파트 III Direct3D 응용
제9장 글꼴
9.1 ID3DXFont
9.1.1 ID3DXFont 만들기
9.1.2 텍스트 그리기
9.1.3 초당 렌더링 프레임 계산하기
9.2 CD3DFont
9.2.1 CD3Dfont 구성하기
9.2.2 텍스트 그리기
9.2.3 정리
9.3 D3DXCreateText
9.4 요약
제10장 메쉬 파트 I
10.1 기하 정보
10.2 서브셋과 속성 버퍼
10.3 드로잉
10.4 최적화
10.5 속성 테이블
10.6 근접 정보
10.7 복제
10.8 메쉬 만들기(D3DXCreateMeshFVF)
10.9 예제 애플리케이션: 메쉬 생성과 렌더링
10.10 요약
제11장 메쉬 파트 II
11.1 ID3DXBuffer
11.2 XFiles
11.2.1 Xfile 읽어들이기
11.2.2 XFile 재질
11.2.3 예제 애플리케이션: XFile
11.2.4 버텍스 법선 생성하기
11.3 프로그레시브 메쉬
11.3.1 프로그레시브 메쉬 생성하기
11.3.2 버텍스 속성 영향력
11.3.3 ID3DXPMesh 메서드
11.3.4 예제 애플리케이션: 프로그레시브 메쉬
11.4 경계 볼륨
11.4.1 몇 가지 새로운 특수 상수
11.4.2 경계 볼륨 형
11.4.3 예제 애플리케이션: 경계 볼륨
11.5 요약
제12장 유연한 카메라 클래스 만들기
12.1 카메라 디자인
12.2 구현 방법
12.2.1 뷰 행렬 계산하기
12.2.2 임의의 축으로 회전하기
12.2.3 Pitch, Yaw, Roll
12.2.4 걷기, 옆걸음질, 날기
12.3 예제 애플리케이션: 카메라
12.4 요약
제13장 기본적인 지형 렌더링
13.1 높이맵
13.1.1 높이맵 만들기
13.1.2 RAW 파일 로딩하기
13.1.3 높이맵 접근과 수정
13.2 지형 기하정보 생성하기
13.2.1 버텍스 계산하기
13.2.2 인덱스 계산 - 삼각형 정의하기
13.3 텍스처링
13.3.1 절차적 방식
13.4 조명
13.4.1 개요
13.4.2 사각형의 음영 계산하기
13.4.3 지형에 음영 입히기
13.5 지형 위를 “걷기”
13.6 예제 애플리케이션: 지형
13.7 약간의 개선점
13.8 요약
제14장 파티클 시스템
14.1 파티클과 포인트 스프라이트
14.1.1 구조체 포맷
14.1.2 포인트 스프라이트 렌더 상태
14.1.3 파티클과 파티클의 속성들
14.2 파티클 시스템의 요소들
14.2.1 파티클 시스템의 드로잉
14.2.2 무작위성
14.3 전형적인 파티클 시스템: 눈, 불꽃놀이, 입자총
14.3.1 예제 애플리케이션: 눈
14.3.2 예제 애플리케이션: 불꽃놀이
14.3.3 예제 애플리케이션: 입자총
14.4 요약
제15장 픽킹
15.1 스크린에서 투영창으로의 변환
15.2 픽킹 광선의 계산
15.3 광선의 변환
15.4 광선-물체 교차
15.5 예제 애플리케이션: 픽킹
15.6 요약
파트 IV 셰이더와 효과
제16장 고수준 셰이딩 언어 소개
16.1 HLSL 셰이더 작성하기
16.1.1 전역
16.1.2 입력과 출력 구조체
16.1.3 진입점 함수
16.2 HLSL 셰이더의 컴파일
16.2.1 상수 테이블
16.2.2 HLSL 셰이더 컴파일
16.3 변수 형
16.3.1 스칼라 형
16.3.2 벡터 형
16.3.3 행렬 형
16.3.4 배열
16.3.5 구조체
16.3.6 typedef 키워드
16.3.7 변수 접두어
16.4 키워드, 문, 형 변환
16.4.1 키워드
16.4.2 기본적인 프로그램 흐름
16.4.3 형 변환
16.5 연산자
16.6 사용자 정의 함수
16.7 내장 함수들
16.8 요약
제17장 버텍스 셰이더의 소개
17.1 버텍스 선언
17.1.1 버텍스 선언 기술하기
17.1.2 버텍스 선언 만들기
17.1.3 버텍스 선언 활성화하기
17.2 버텍스 데이터 이용
17.3 버텍스 셰이더를 이용하기 위한 단계
17.3.1 버텍스 셰이더의 작성과 컴파일
17.3.2 버텍스 셰이더 만들기
17.3.3 버텍스 셰이더의 셋팅
17.3.4 버텍스 셰이더 파괴하기
17.4 예제 애플리케이션: 난반사광
17.5 예제 애플리케이션: 카툰 렌더링
17.5.1 카툰 셰이딩
17.5.2 카툰 셰이딩 버텍스 셰이더 코드
17.5.3 실루엣 외곽선
17.5.4 실루엣 외곽선 버텍스 셰이더 코드
17.6 요약
제18장 픽셀 셰이더의 소개
18.1 멀티 텍스처링 둘러보기
18.1.1 멀티 텍스처의 활성화
18.1.2 멀티 텍스처 좌표
18.2 픽셀 셰이더의 입출력
18.3 픽셀 셰이더 이용의 단계
18.3.1 픽셀 셰이더의 작성과 컴파일
18.3.2 픽셀 셰이더 만들기
18.3.3 픽셀 셰이더 설정하기
18.3.4 픽셀 셰이더 제거하기
18.4 HLSL 샘플러 객체
18.5 예제 애플리케이션: 픽셀 셰이더에서의 멀티 텍스처링
18.6 요약
제19장 이펙트 프레임웍
19.1 테크닉과 패스
19.2 부수적인 HLSL 고유 객체
19.2.1 텍스처 객체
19.2.2 샘플러 객체와 샘플러 상태
19.2.3 버텍스 셰이더와 픽셀 셰이더 객체
19.2.4 문자열
19.2.5 주석
19.3 효과 파일 내의 장치 상태
19.4 이펙트 작성하기
19.5 상수 설정
19.6 이펙트 이용하기
19.6.1 이펙트로의 핸들 얻기
19.6.2 이펙트 활성화
19.6.3 이펙트 시작하기
19.6.4 현재의 렌더링 패스 지정
19.6.5 이펙트 종료하기
19.6.6 예제
19.7 예제 애플리케이션: 이펙트 파일에서의 조명과 텍스처링
19.8 예제 애플리케이션: 안개 효과
19.9 예제 애플리케이션: 카툰 효과
19.10 EffectEdit
19.11 요약
부록 A 윈도우 프로그래밍 소개
둘러보기
자원
이벤트, 메시지 큐, 메시지, 메시지 루프
GUI
Hello World 윈도우 애플리케이션
Hello World 살펴보기
Includes, 전역 변수, 프로토타입
WinMain
WNDCLASS와 등록
창 만들기와 보여주기
메시지 루프
창 프로시저
MessageBox 함수
향상된 메시지 루프
요약
찾아보기