이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
게임 물리 엔진 개발
베스트
게임 top100 82주
가격
38,000원
10 34,200
YES포인트?
380원 (1%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  국내배송만 가능
  •  문화비소득공제 가능

책소개

목차

CHAPTER 1 소개
1.1 게임 물리란 무엇인가… ………………………………………………… 2
1.2 물리 엔진이란 무엇인가… ……………………………………………… 3
1.2.1 물리 엔진의 장점… …………………………………………………… 4
1.2.2 물리 엔진의 약점… …………………………………………………… 5
1.3 물리 엔진으로의 접근방법………………………………………………… 6
1.3.1 물체의 종류… ………………………………………………………… 6
1.3.2 접촉 해소… …………………………………………………………… 7
1.3.3 충격량과 힘… ………………………………………………………… 8
1.3.4 만들고자 하는 것… …………………………………………………… 9
1.4 물리 엔진에서의 수학…………………………………………………… 10
1.4.1 알아야 할 수학… ……………………………………………………… 11
1.4.2 살펴볼 수학 연산… …………………………………………………… 12
1.4.3 이 책에서 다룰 수학 내용……………………………………………… 13
1.5 이 책의 소스코드………………………………………………………… 13
1.6 이 책의 구성……………………………………………………………… 15
1.6.1 연습문제와 프로젝트… ……………………………………………… 15

01 P A R T 입자 물리학

CHAPTER 2 입자 수학
2.1 벡터… …………………………………………………………………… 19
2.1.1 왼손 좌표계 vs 오른손 좌표계………………………………………… 24
2.1.2 벡터와 방향… ………………………………………………………… 26
2.1.3 스칼라와 벡터의 곱셈… ……………………………………………… 29
2.1.4 벡터의 덧셈과 뺄셈… ………………………………………………… 31
2.1.5 벡터의 곱셈… ………………………………………………………… 34
2.1.6 성분 곱셈… …………………………………………………………… 34
2.1.7 벡터의 내적… ………………………………………………………… 35
2.1.8 벡터곱…………………………………………………………………… 38
2.1.9 정규직교 기저… ……………………………………………………… 42
2.2 미적분학… ……………………………………………………………… 44
2.2.1 미분……………………………………………………………………… 44
2.2.2 적분……………………………………………………………………… 50
2.3 요약… …………………………………………………………………… 52
2.4 연습문제… ……………………………………………………………… 53

CHAPTER 3 운동법칙
3.1 입자… …………………………………………………………………… 58
3.2 운동 제1법칙과 제2법칙… …………………………………………… 59
3.2.1 힘 방정식… …………………………………………………………… 61
3.2.2 입자에 질량을 적용하기… …………………………………………… 62
3.2.3 운동량과 속도… ……………………………………………………… 64
3.2.4 중력……………………………………………………………………… 64
3.3 적분기… ………………………………………………………………… 66
3.3.1 업데이트 방정식… …………………………………………………… 67
3.3.2 완전한 형태의 적분기… ……………………………………………… 70
3.4 요약… …………………………………………………………………… 71
3.5 연습문제… ……………………………………………………………… 72

CHAPTER 4 입자 물리 엔진
4.1 탄도학… ………………………………………………………………… 75
4.1.1 발사체 속성 지정… …………………………………………………… 76
4.1.2 구현……………………………………………………………………… 78
4.2 불꽃놀이… ……………………………………………………………… 81
4.2.1 불꽃 데이터… ………………………………………………………… 81
4.2.2 불꽃놀이 계산 규칙… ………………………………………………… 82
4.2.3 구현……………………………………………………………………… 85
4.3 요약… …………………………………………………………………… 89
4.4 프로젝트… ……………………………………………………………… 89

02 P A R T 질량 집합 물리

CHAPTER 5 Aing General Forces
5.1 달랑베르의 원리………………………………………………………… 93
5.2 힘 발생기………………………………………………………………… 96
5.2.1 인터페이스와 다형성… ……………………………………………… 98
5.2.2 구현……………………………………………………………………… 98
5.2.3 중력 힘 발생기… …………………………………………………… 102
5.2.4 드래그 힘 발생기… ………………………………………………… 103
5.3 내장 중력과 댐핑………………………………………………………… 105
5.4 요약… …………………………………………………………………… 105
5.5 연습문제… ……………………………………………………………… 106

CHAPTER 6 스프링과 스프링 유사 물체
6.1 후크의 법칙……………………………………………………………… 107
6.2 스프링 힘 발생기………………………………………………………… 110
6.2.1 기본적인 스프링 힘 발생기………………………………………… 111
6.2.2 고정 스프링 힘 발생기……………………………………………… 113
6.2.3 탄성 고무줄 힘 발생기……………………………………………… 115
6.2.4 부력 힘 발생기… …………………………………………………… 117
6.3 뻣뻣한 스프링…………………………………………………………… 121
6.3.1 뻣뻣한 스프링 문제… ……………………………………………… 122
6.3.2 뻣뻣한 스프링을 흉내 내기………………………………………… 124
6.4 요약… …………………………………………………………………… 131
6.5 연습문제… ……………………………………………………………… 132

CHAPTER 7 강성 제약 조건
7.1 단순 충돌 해소…………………………………………………………… 135
7.1.1 접근 속도… ………………………………………………………… 136
7.1.2 반발 계수… ………………………………………………………… 137
7.1.3 충돌의 방향과 접촉 법선…………………………………………… 138
7.1.4 충격량 … …………………………………………………………… 140
7.2 충돌 처리………………………………………………………………… 142
7.2.1 충돌 검출… ………………………………………………………… 145
7.2.2 겹치는 부분의 해결… ……………………………………………… 146
7.2.3 정지 접촉… ………………………………………………………… 151
7.3 접촉 처리기 알고리즘…………………………………………………… 156
7.3.1 접촉 처리 순서… …………………………………………………… 157
7.3.2 시분할 엔진… ……………………………………………………… 161
7.4 충돌과 비슷한 것들……………………………………………………… 163
7.4.1 끈……………………………………………………………………… 163
7.4.2 막대기………………………………………………………………… 166
7.5 요약… …………………………………………………………………… 169
7.6 연습문제… ……………………………………………………………… 169

CHAPTER 8 질량 집합 물리 엔진
8.1 엔진 개요………………………………………………………………… 173
8.2 물리 엔진의 사용………………………………………………………… 179
8.2.1 출렁다리와 끈… …………………………………………………… 179
8.2.2 마찰…………………………………………………………………… 181
8.2.3 BLOB 게임…………………………………………………………… 181
8.3 요약… …………………………………………………………………… 182
8.4 프로젝트… ……………………………………………………………… 183

03 P A R T Rigid-Body Physics

CHAPTER 9 물체의 회전
9.1 2D에서 물체의 회전… ………………………………………………… 188
9.1.1 회전각………………………………………………………………… 188
9.1.2 각속도………………………………………………………………… 190
9.1.3 질량 중심과 원점… ………………………………………………… 191
9.2 3차원에서의 방향… …………………………………………………… 196
9.2.1 오일러 각… ………………………………………………………… 197
9.2.2 회전축과 회전각… ………………………………………………… 200
9.2.3 회전 행렬… ………………………………………………………… 201
9.2.4 사원수………………………………………………………………… 202
9.3 각속도와 각가속도… …………………………………………………… 205
9.3.1 점의 속도……………………………………………………………… 207
9.3.2 각가속도… …………………………………………………………… 207
9.4 코드로 구현하기… ……………………………………………………… 208
9.4.1 행렬 클래스…………………………………………………………… 208
9.4.2 행렬의 곱셈…………………………………………………………… 210
9.4.3 역행렬과 전치 행렬… ……………………………………………… 221
9.4.4 사원수를 행렬로 변환… …………………………………………… 229
9.4.5 벡터의 변환…………………………………………………………… 231
9.4.6 행렬의 기저 바꾸기… ……………………………………………… 236
9.4.7 사원수 클래스………………………………………………………… 237
9.4.8 사원수의 정규화……………………………………………………… 238
9.4.9 사원수의 결합………………………………………………………… 239
9.4.10 회전… ……………………………………………………………… 240
9.4.11 각속도에 의한 업데이트…………………………………………… 241
9.5 요약… …………………………………………………………………… 242
9.6 연습문제… ……………………………………………………………… 243

CHAPTER 10 강체의 운동 법칙
10.1 강체……………………………………………………………………… 247
10.2 회전을 위한 뉴튼의 운동 제2법칙… ………………………………… 251
10.2.1 토크… ……………………………………………………………… 251
10.2.2 관성 모멘트… ……………………………………………………… 253
10.2.3 월드 좌표계에서의 관성 텐서……………………………………… 258
10.3 회전에 대한 달랑베르의 원리… ……………………………………… 261
10.3.1 힘 발생기… ………………………………………………………… 266
10.4 강체 적분………………………………………………………………… 269
10.5 요약……………………………………………………………………… 271
10.6 연습문제………………………………………………………………… 271

CHAPTER 11 강체 물리 엔진
11.1 엔진 개요………………………………………………………………… 275
11.2 물리 엔진의 활용… …………………………………………………… 278
11.2.1 비행 시뮬레이터… ………………………………………………… 279
11.2.2 선박 시뮬레이터… ………………………………………………… 288
11.3 요약……………………………………………………………………… 295
11.4 프로젝트………………………………………………………………… 296

04 P A R T Collision Detection

CHAPTER 12 충돌 감지
12.1 충돌 감지 파이프라인… ……………………………………………… 302
12.2 포괄적 충돌 감지… …………………………………………………… 304
12.2.1 요구사항… ………………………………………………………… 305
12.3 바운딩 볼륨 계층 구조… ……………………………………………… 306
12.3.1 계층 구조… ………………………………………………………… 310
12.3.2 계층 구조 만들기…………………………………………………… 318
12.3.3 서브오브젝트 계층 구조…………………………………………… 327
12.4 공간 분할………………………………………………………………… 329
12.4.1 이진 공간 분할법…………………………………………………… 330
12.4.2 옥트 트리와 쿼드 트리……………………………………………… 336
12.4.3 그리드… …………………………………………………………… 340
12.4.4 다중해상도 맵… …………………………………………………… 345
12.5 요약 ……………………………………………………………………… 345
12.6 연습문제………………………………………………………………… 346

CHAPTER 13 접촉 발생
13.1 충돌 지오메트리………………………………………………………… 350
13.1.1 기본적인 도형의 조합……………………………………………… 352
13.2 접촉 발생………………………………………………………………… 353
13.2.1 접촉 유형… ………………………………………………………… 355
13.2.2 접촉 데이터… ……………………………………………………… 358
13.2.3 점-면 접촉…………………………………………………………… 361
13.2.4 선-선 접촉…………………………………………………………… 362
13.2.5 선-면 접촉…………………………………………………………… 363
13.2.6 면-면 접촉…………………………………………………………… 364
13.2.7 접촉 발생 이전에 필요한 테스팅… ……………………………… 365
13.3 간단한 충돌 알고리즘… ……………………………………………… 366
13.3.1 두 개의 구가 충돌하는 경우… …………………………………… 367
13.3.2 구와 평면이 충돌하는 경우………………………………………… 370
13.3.3 박스와 평면의 충돌………………………………………………… 374
13.3.4 박스와 구 충돌하기………………………………………………… 379
13.4 분리축 테스트…………………………………………………………… 384

13.4.1 SAT로 접촉 데이터 생성하기……………………………………… 386
13.4.2 2개의 박스 충돌하기… …………………………………………… 387
13.4.3 볼록 다면체 충돌하기……………………………………………… 393
13.5 일관성…………………………………………………………………… 395
13.6 요약……………………………………………………………………… 399
13.7 연습문제………………………………………………………………… 400

05 P A R T Contact Physics

CHAPTER 14 충돌 처리
14.1 충격과 충격 토크… …………………………………………………… 404
14.1.1 충격 토크… ………………………………………………………… 405
14.1.2 회전하는 충격… …………………………………………………… 407
14.1.3 회전 충돌 처리하기………………………………………………… 409
14.2 충돌 충격량……………………………………………………………… 409
14.2.1 접촉 좌표 변경하기………………………………………………… 410
14.2.2 충격에 의한 속도 변화……………………………………………… 419
14.2.3 속도에 의한 충격량 변화…………………………………………… 424
14.2.4 필요한 속도 변화 계산하기………………………………………… 424
14.2.5 충격량 계산하기… ………………………………………………… 426
14.2.6 충격량 적용하기… ………………………………………………… 427
14.3 상호 관통 처리하기… ………………………………………………… 429
14.3.1 처리 방법 선택하기………………………………………………… 430
14.3.2 비선형 투영법 구현하기…………………………………………… 434
14.3.3 과회전 방지하기… ………………………………………………… 438
14.4 충돌 처리 프로세스… ………………………………………………… 441
14.4.1 충돌 처리 파이프라인……………………………………………… 443
14.4.2 접촉 데이터 준비하기……………………………………………… 445
14.4.3 관통 처리하기… …………………………………………………… 451
14.4.4 속도 처리하기… …………………………………………………… 460
14.4.5 상대적인 업데이트 알고리즘……………………………………… 462
14.5 요약……………………………………………………………………… 466
14.6 연습문제………………………………………………………………… 467

CHAPTER 15 정지 접촉과 마찰
15.1 정지력…………………………………………………………………… 470
15.1.1 힘 계산하기… ……………………………………………………… 472
15.2 마이크로 충돌…………………………………………………………… 474
15.2.1 가속도 제거하기… ………………………………………………… 476
15.2.2 복원 계수 낮추기…………………………………………………… 478
15.2.3 새로운 속도 계산…………………………………………………… 479
15.3 마찰의 종류……………………………………………………………… 480
15.3.1 정적 마찰과 동적 마찰……………………………………………… 480
15.3.2 등방성 마찰과 비등방성 마찰……………………………………… 484
15.4 마찰 구현하기…………………………………………………………… 485
15.4.1 충격으로서의 마찰… ……………………………………………… 486
15.4.2 속도 처리 알고리즘 수정하기……………………………………… 489
15.4.3 모두 합치기… ……………………………………………………… 496
15.5 마찰과 연속적인 접촉 처리… ………………………………………… 499
15.6 요약……………………………………………………………………… 501
15.7 연습문제………………………………………………………………… 501

CHAPTER 16 안정성과 최적화
16.1 안정성…………………………………………………………………… 503
16.1.1 쿼터니온 변환… …………………………………………………… 505
16.1.2 경사면에서의 상호 관통…………………………………………… 506
16.1.3 안정성 통합… ……………………………………………………… 508
16.1.4 보수적인 충돌 감지의 이점………………………………………… 510
16.1.5 수학적인 정확도 바꾸기…………………………………………… 512
16.2 최적화…………………………………………………………………… 514
16.2.1 슬립… ………………………………………………………………… 514
16.2.2 관통과 속도의 오차 한계…………………………………………… 525
16.2.3 접촉 분류… ………………………………………………………… 528
16.2.4 코드 최적화… ……………………………………………………… 530
16.3 요약……………………………………………………………………… 534

CHAPTER 17 한데 모으기
17.1 엔진 개요………………………………………………………………… 535
17.2 물리 엔진 활용하기… ………………………………………………… 538
17.2.1 랙돌… ……………………………………………………………… 539
17.2.2 파괴 물리학… ……………………………………………………… 544
17.2.3 폭발 물리학… ……………………………………………………… 551
17.3 엔진의 한계……………………………………………………………… 560
17.3.1 무더기… …………………………………………………………… 560
17.3.2 반력 마찰… ………………………………………………………… 561
17.3.3 조인트 관절… ……………………………………………………… 561
17.3.4 빡빡한 스프링… …………………………………………………… 562
17.4 요약……………………………………………………………………… 562
17.5 프로젝트………………………………………………………………… 562

06 P A R T 더 살펴볼 물리학 주제

CHAPTER 18 2차원 물리학
18.1 2D 또는 3D?…………………………………………………………… 567
18.2 벡터 수학………………………………………………………………… 569
18.3 입자 및 질량 집합 물리학……………………………………………… 571
18.4 회전 수학………………………………………………………………… 572
18.4.1 회전 표시… ………………………………………………………… 572
18.4.2 행렬… ……………………………………………………………… 573
18.5 강체 동역학……………………………………………………………… 574
18.6 충돌 감지………………………………………………………………… 576
18.6.1 점?선 접촉… ……………………………………………………… 577
18.6.2 선?선 접촉… ……………………………………………………… 577
18.6.3 접촉 생성… ………………………………………………………… 578
18.7 충돌 반응………………………………………………………………… 579
18.8 요약……………………………………………………………………… 579
18.9 프로젝트………………………………………………………………… 580

CHAPTER 19 기타 프로그래밍 언어
19.1 ActionScript 3………………………………………………………… 581
19.2 C… ……………………………………………………………………… 586
19.3 자바……………………………………………………………………… 587
19.4 C#… …………………………………………………………………… 588
19.5 다른 스크립트 언어… ………………………………………………… 589

CHAPTER 20 다른 형식의 물리학
20.1 동시 접촉 해소… ……………………………………………………… 592
20.1.1 야코비안… ………………………………………………………… 592
20.1.2 선형 상보성 문제…………………………………………………… 594
20.2 좌표 줄이기 접근방식… ……………………………………………… 597
20.3 요약……………………………………………………………………… 599

부 록 A 유용한 관성 텐서
A.1 이산 질량… ……………………………………………………………… 602
A.2 연속 질량… ……………………………………………………………… 602
A.3 일반 도형… ……………………………………………………………… 603
A.3.1 직육면체… …………………………………………………………… 603
A.3.2 구… …………………………………………………………………… 603
A.3.3 원통… ………………………………………………………………… 604
A.3.4 원뿔… ………………………………………………………………… 605
A.3.5 반구체… ……………………………………………………………… 605
A.4 2D의 관성 모멘트… …………………………………………………… 606
A.4.1 2D 도형… …………………………………………………………… 606

부 록 B 유용한 마찰 계수

부 록 C 수학 정리
C.1 벡터… …………………………………………………………………… 611
C.2 사원수… ………………………………………………………………… 612
C.3 행렬… …………………………………………………………………… 613
C.4 적분법… ………………………………………………………………… 615
C.5 물리… …………………………………………………………………… 615
C.6 기타 공식… ……………………………………………………………… 617
■용어집… …………………………………………………………………… 618

저자 소개

저자 : 이안 밀링턴
R’n’D Guy에서 인공 지능과 실시간 시뮬레이션, 그리고 물리학을 포함하는 다양한 게임 관련 기술과 연구 개발에 관한 컨설턴트로 일하고 있다. 다양한 게임 장르와 기술에 사용되는 AI 미들웨어로 유명한 마인드라테(Mindlatthe)를 설립했다.
역 자 소 개
진석준
PC 호환성 테스터로 IT 업계에 입문한 13년차 QA/테스터이다. 현재는 게임과 관련된 테스트 아웃소싱 업체에 재직하고 있다. 날로 발전하는 게임 트렌드에 맞추어 어떻게 하면 더 나은 게임 품질을 제공할 수 있을 것인가에 대한 고민이 깊다. 해외의 소프트웨어 테스팅글을 번역해 소개하는 것에 관심이 많으며 테크니컬 라이터 그룹인 GoDev의 멤버로 활동하고 있다.

박종규
서울대학교 대학원 박사과정을 수료했으며, 전공 연구를 위한 수단으로 시작한 프로그래밍이 본업이 되어 윈도응용 프로그래밍, 3D 그래픽스 프로그래밍을 주로 하고 있다. 현재 드림한스에서 소수 정예 개발팀을 이끌고 있다.

김도균
마이크로소프트 공인 강사(MCT)이자 MVP이며 ‘강철벼룩’이라는 필명을 사용하는 글 쓰는 엔지니어다. 창의성과 상상력의 불꽃이 튀는 해적들이 모인 기술 콘텐츠 저술 및 번역 공동체인 GoDev(www.godev.kr)의 선장으로 멤버들과 절망의 시대를 함께 건너고 있다. 지앤선 출판사에서 출간한 번역서로는 《한국어판 Professional ASP.NET 4》, 《알기 쉬운 UX 디자인 평가》가 있다.

관련 분류

품목정보

발행일
2016년 01월 25일
쪽수, 무게, 크기
640쪽 | 173*230mm
ISBN13
9788993827040

첫번째 리뷰어가 되어주세요.

한줄평 총점 10.0

클린봇이 부적절한 글을 감지 중입니다.

설정

사락 별점0

혜택 및 유의사항

첫번째 별점을 남겨주세요.

첫번째 밑줄을 남겨주세요.