매끄러운 번역 및 구어체적 설명이 자칫 딱딱하기만 한 물리책을 조금은 상쇄시켜주는 책으로 고등학교 물리 및 수학을 정확히 이해해야 이해가 가는 책이다. 어렵지만 실무적인 내용 및 디지털 물리등 앞으로 꼭 이해해야 하는 부분들이 실려 있기 때문에 소장가치가 높으며, 필요할 때마다 꺼내보면 도움이 될 것이다.
게임 개발자의 서재에 반드시 꽂혀 있어야 할 물리책
물리는 실감 나는 게임을 만드는 데 필수지만, 동시에 개발자들이 어려워하는 주제이기도 합니다. 이 책은 물리학의 기초부터 시작해, 게임 개발에 꼭 필요한 파티클 및 리지드바디 역학을 친절히 설명하고, 비행기, 차량, 총과 폭발 등 게임에 자주 등장하는 물리모델을 살펴보고 구현해봅니다. 특히 이번 개정2판은 터치스크린, 가속도계 등 모바일 관련 기술부터 3D 디스플레이까지 최신 디지털 물리를 다루는 파트가 추가되어 [앵그리버드]나 [컷더로프]처럼 모바일 기기에 특화된 물리효과를 구현하고자 하는 개발자들에게 더욱 큰 도움을 줄 것입니다. 기초 물리 지식부터 2D, 3D, 모바일까지 아우르는 유일한 게임 물리 책입니다.
리얼한 효과로 게임에 생동감을 불어넣는 비법
[배틀필드]나 [GTA] 시리즈처럼 실감 나는 게임을 만들려면 물리법칙에 기반한 사실적인 효과가 필수입니다. [앵그리버드] 같은 2D 게임조차 물리법칙에 따라 투사체가 건물에 충돌하여 무너지고 파괴되는 연쇄작용이 재미의 핵심이었습니다. [쿠키런]이나 [애니팡]처럼 물리적 계산이 필요 없을 것 같은 게임도 내부에서는 캐릭터나 오브젝트의 이동과 충돌처리에 모두 물리가 사용되고 있습니다.
유니티나 언리얼 엔진에도 물리엔진이 기본 컴포넌트로 포함될 만큼, 게임에서 물리는 떼려야 뗄 수 없는 핵심적인 요소가 되었습니다. 그럼에도 국내 개발자들이 게임에 필요한 물리만을 제대로 익힐 수 있는 서적은 거의 없었습니다.
이 책이 나오기 전까지는요.
이 책은 10년간 게임 물리 분야의 고전으로 자리 잡은 『Physics for Game Developers 』의 개정2판입니다. 수많은 게임 개발자들의 길잡이가 되어준 이 책은 기초적인 내용부터 복잡한 물리 시뮬레이션에 관련된 내용까지 게임에서 다루는 물리를 전반적으로 설명합니다.
구체적으로 보면 물리학의 기초부터 시작해, 게임 개발에 꼭 필요한 파티클 및 리지드바디 역학, 그리고 비행기, 차량, 총과 폭발 등의 물리모델을 살펴보고 구현하는 내용입니다. 특히 이번 개정2판은 터치스크린, 가속도계 등 모바일 관련 기술부터 3D 디스플레이 및 3D 사운드까지 최신 디지털 물리를 다루는 파트가 추가되었으로 [컷더로프]나 [템플 런]처럼 모바일 기기에 특화된 물리효과를 구현하고자 하는 개발자들에게 더욱 큰 도움을 줄 것입니다.
【대상 독자】
PART I 물리학의 기초
CHAPTER 1 기본 개념
1.1 뉴턴의 운동법칙
1.2 단위와 측정
1.3 좌표계
1.4 벡터
1.5 미분과 적분
1.6 질량, 질량중심, 관성 모멘트
1.7 뉴턴의 제2운동법칙
1.8 관성텐서
1.9 상대론적 시간
CHAPTER 2 운동학
2.1 속도와 가속도
2.2 등가속도
2.3 가변가속도
2.4 2차원 파티클 운동학
2.5 3차원 파티클 운동학
2.5.1 X 성분
2.5.2 Y 성분
2.5.3 Z 성분
2.5.4 벡터
2.5.5 목표물 맞히기
2.6 키네마틱 파티클 폭발
2.7 리지드바디 운동학
2.8 로컬좌표축
2.9 각속도 및 각가속도
CHAPTER 3 힘
3.1 다양한 힘
3.2 역장
3.3 마찰력
3.4 유체저항
3.5 압력
3.6 부력
3.7 스프링과 댐퍼
3.8 힘과 회전력
3.9 마치며
CHAPTER 4 동역학
4.1 2차원 파티클 동역학
4.2 3차원 파티클 동역학
4.2.1 X 성분
4.2.2 Y 성분
4.2.2 Z 성분
4.2.3 다시 살펴보는 대포 예제
4.3 리지드바디 동역학
CHAPTER 5 충돌
5.1 충격-운동량 법칙
5.2 충돌
5.3 선형충격 및 각충격
5.4 마찰
CHAPTER 6 발사체
6.1 단순 탄도
6.2 저항
6.3 마그누스 효과
6.4 가변질량
PART II 리지드바디 동역학
CHAPTER 7 실시간 시뮬레이션
7.1 운동방정식의 적분
7.2 오일러 기법
7.3 더 나은 방법들
7.4 마치며
CHAPTER 8 파티클
8.1 단순한 파티클 모델
8.1.1 적분기
8.1.2 렌더링
8.2 기초적인 시뮬레이터
8.3 외부힘 구현하기
8.4 충돌 구현하기
8.4.1 파티클-지면 충돌
8.4.2 파티클-장애물 충돌
8.5 튜닝
CHAPTER 9 2D 리지드바디 시뮬레이터
9.1 모델
9.1.1 좌표변환
9.1.2 적분기
9.1.3 렌더링
9.2 기초적인 시뮬레이터
9.3 튜닝
CHAPTER 10 충돌반응 구현하기
10.1 선형충돌반응
10.2 각효과
CHAPTER 11 3D 리지드바디 시뮬레이션에서의 회전
11.1 회전행렬
11.2 쿼터니언
11.2.1 쿼터니언 연산
11.3 3D 시뮬레이션에서의 쿼터니언
CHAPTER 12 3D 리지드바디 시뮬레이션
12.1 모델
12.2 적분
12.3 비행조종 시스템
CHAPTER 13 연결된 물체
13.1 스프링과 댐퍼
13.2 파티클 연결하기
13.2.1 로프
13.3 리지드바디 연결하기
13.3.1 고리사슬
CHAPTER 14 물리엔진
14.1 자신만의 물리엔진 만들기
14.1.1 물리모델
14.1.2 시뮬레이션 물체 관리자
14.1.3 충돌검출
14.1.4 충돌반응
14.1.5 힘 이펙터
14.1.6 수치적분기
PART III 물리모델 만들기
CHAPTER 15 비행기
15.1 기하구조
15.2 양력과 저항
15.3 다른 힘들
15.4 조종
15.5 모델 만들기
CHAPTER 16 배
16.1 복원성과 침몰
16.1.1 복원성
16.1.2 침몰
16.2 배의 움직임
16.2.1 상하동요
16.2.2 롤
16.2.3 피치
16.2.4 짝운동
16.3 저항과 추진
16.3.1 일반적인 저항
16.3.2 추진
16.4 조작성
16.4.1 키와 추력편향
CHAPTER 17 차량과 호버크라프트
17.1 차량
17.1.1 저항
17.1.2 동력
17.1.3 제동거리
17.1.4 스티어링
17.2 호버크라프트
17.2.1 작동원리
17.2.2 저항
17.2.3 조종
CHAPTER 18 총과 폭발
18.1 발사체의 움직임
18.2 조준
18.2.1 영점조정
18.2.2 호흡과 자세
18.3 반동과 충격
18.4 폭발
18.5 파티클 폭발
18.6 폴리곤 폭발
CHAPTER 19 스포츠
19.1 골프스윙 모델 만들기
19.1.1 골프스윙 방정식 풀기
19.2 당구
19.2.1 구현
19.2.2 초기화
19.2.3 시뮬레이션
19.2.4 힘 계산
19.2.5 충돌처리
PART IV 디지털 물리
CHAPTER 20 터치스크린
20.1 터치스크린 종류
20.1.1 저항막방식
20.1.2 정전용량방식
20.1.3 적외선방식 및 광학영상 기법
20.1.4 색다른 방식: 진동파신호 및 표면음파
20.2 터치스크린의 물리
20.2.1 저항막방식 터치스크린
20.2.2 정전용량방식 터치스크린
20.3 예제 프로그램
20.3.1 멀티터치
20.4 다른 고려할 점
20.4.1 햅틱 피드백
20.4.2 게임 속에서 터치스크린을 이용하기
20.4.3 마우스 입력과의 차이
20.4.4 커스텀 제스처
CHAPTER 21 가속도계
21.1 가속도계 이론
21.1.1 MEMS 가속도계
21.1.2 일반적인 가속도계 스펙
21.1.3 데이터 클리핑
21.2 방향 감지
21.3 기울기 감지
21.3.1 폰을 기울여 스프라이트 조종하기
21.3.2 2 자유도
CHAPTER 22 위치기반 게임
22.1 위치기반 게임
22.1.1 지오캐싱과 리버스 지오캐싱
22.1.2 혼합현실
22.1.3 증강현실 게임
22.2 몇 시예요?
22.2.1 2차원 수학 처리
22.3 위치, 위치, 위치
22.3.1 거리
22.3.2 대권 선수방향
22.3.3 항정선
CHAPTER 23 압력센서와 로드셀
23.1 압력
23.1.1 높은 압력의 효과
23.2 버튼 연타
23.2.1 로드셀
23.3 기압계
CHAPTER 24 3D 디스플레이
24.1 양안비전
24.2 스트레오스코픽의 기본원리
24.2.1 좌우 절두체
24.3 디스플레이의 종류
24.3.1 보색 애너글리프
24.3.2 선형편광과 원형편광
24.3.3 액정 플라즈마
24.3.4 자동 스테레오스코픽 영상
24.3.5 첨단 기술
24.4 프로그래밍 시 고려사항
24.4.1 능동적 스테레오스코픽화
24.4.2 수동적 스테레오스코픽화
CHAPTER 25 광학추적기법
25.1 센서와 SDK
25.1.1 키넥트
25.1.2 OpenCV
25.2 수치미분
CHAPTER 26 소리
26.1 소리란 무엇인가
26.2 음파의 특성과 작용
26.2.1 조화파
26.2.2 중첩
26.2.3 음속
26.2.4 감쇠
26.2.5 반사
26.2.6 도플러효과
26.3 3D 사운드
26.3.1 3D 사운드를 듣는 방법
26.3.2 간단한 예제
APPENDIX A 벡터연산
APPENDIX B 행렬연산
APPENDIX C 쿼터니언 연산
APPENDIX D 참고문헌
자료명 | 등록일 | 다운로드 |
---|---|---|
예제소스 | 2020-10-27 | 다운로드 |