책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 게임 프로그래밍
· ISBN : 9788993827873
· 쪽수 : 300쪽
책 소개
목차
1. 선형 대수(Linear Algebra)
1.1 선형 변환(Linear Transformation)
1.2 벡터(Vector)와 벡터 공간(Vector Space)
2. 벡터(Vector)
2.1 유클리드 공간(Euclidean Space)
2.2 3차원 공간에서의 벡터
2.3 벡터 내적(dot product)
2.4 벡터 외적(corss product)
3. 행렬(Matrix)
3.1 행렬의 기본 연산
3.2 선형계(linear system)와 가우스 소거법(Gauss elimination)
3.3 가우스-요르단 소거법(Gauss?Jordan elimination)
3.4 행렬식(determinant)과 역행렬
3.5 벡터와 행렬
4. 선형 변환(Linear Transformation)
4.1 선형 변환과 행렬
4.2 크기 변환(Scaling)
4.3 좌표축 기준 회전 변환(Rotation)
4.4 임의의 축 기준 회전 변환(Rotation)
4.5 선형 변환 조합과 행렬 곱셈
5. 아핀 공간(Affine Space)
5.1 점(Point)과 벡터(Vector)
5.2 선(Line)
5.3 면(Plane)
5.4 삼각형(Triangle)
6. 아핀 변환(Affine Transformation)
6.1 선형 변환과 위치 변환
6.2 동차 좌표계(homogeneous coordinates)
6.3 밀기 변환(Shearing)
6.4 반사 변환(Reflection)
6.5 기준점이 원점이 아닐 때의 아핀 변환
6.6 아핀 변환의 조합과 분해
6.7 선과 면의 아핀 변환
7. 방향(Orientation)의 표현
7.1 회전(Rotation)과 방향(Orientation)의 구분
7.2 오일러 각(Euler Angles)
7.3 축-각 (Axis-Angle)
7.4 사원수(Quaternion)
7.4.1 복소수(complex number)
7.4.2 오일러의 수(Euler’s number)
7.4.3 오일러의 공식(Euler’s formula)
7.4.4 사원수(Quaternion)의 발견
7.4.5 사원수(Quaternion)와 회전
7.4.6 사원수(Quaternion)회전의 유용성
7.4.7 사원수(Quaternion)와 행렬
8. 투영(projection) 변환
8.1 카메라 좌표계(Camera coordinate)
8.2 원근 투영(Perspective Projection)
8.3 직교 투영(Orthogonal Projection)
9. 충돌 검사(Collision Detection)
9.1 점과 점 사이의 거리
9.2 점과 선 사이의 거리
9.3 점과 평면 사이의 거리
9.4 구의 충돌 검사
9.5 AABB의 충돌 검사
9.5.1 AABB간의 충돌
9.5.2 선과의 충돌
9.5.3 평면과의 충돌
9.6 OBB의 충돌 검사
9.7 마우스 픽킹(mouse picking)
10. 곡선(Curve)
10.1 스플라인(Spline)
10.2 허밋 스플라인(Hermite spline)
10.3 베지어 스플라인(B?zier spline)
10.4 캣멀-롬 스플라인(Catmull?Rom spline)
저자소개
리뷰
책속에서
”컴퓨터 그래픽스는 대부분이 수학에 대한 내용입니다. 만약 당신이 수학을 좋아하지 않는다면, 음, 딱히 할 말이 없군요. 제 목표는 다가가기 쉽게 수학을 설명하는 겁니다. 하지만 컴퓨터 그래픽스에 관한 모든 것이 수학을 바탕으로 하고 있다는 사실을 숨기지 않을 것 입니다. 특히 3D 컴퓨터 그래픽스 경우에 말입니다.”
크리스 해커, 게임 디벨로퍼 매거진, 1995년 6/7월호
이 책은 3D 게임 개발에 필요한 여러가지 수학 내용들 중에서 가장 핵심적이며 기본이 되는 주제들을 이해하기 쉽게 설명하기 위해 만들어졌다. 여기서 소개될 내용들은 단지 그래픽스 프로그래머만을 위한 것이 아니다. 이 정도 깊이의 수학은 인공지능, 게임플레이, 네트워크 프로그래머 등은 물론이고, 그래픽 아티스트와 게임 기획자를 비롯한 대다수의 게임 개발자들도 어느 정도 이해하고 있어야 한다고 생각한다.
앞으로 소개될 내용들은 게임을 만들 정도의 지적 능력이 있는 사람이라면 누구나 큰 어려움 없이 소화해낼 수 있는 수준이다. 또한 게임을 만들어 본 적이 없다고 할지라도 중고등학교 과정에서 등장하는 수학 개념들을 이해하고 있다면 충분히 이 책을 읽을 수 있을 것이다.
<저자 서문 중>