확장메뉴
주요메뉴


소득공제 베스트셀러

이득우의 게임 수학

: 39가지 예제로 배운다! 메타버스를 구성하는 게임 수학의 모든 것

[ 2022년도 대한민국학술원 선정 교육부 우수학술도서 ]
이득우 | 책만 | 2022년 02월 22일   저자/출판사 더보기/감추기
리뷰 총점9.8 리뷰 7건 | 판매지수 7,326
베스트
게임 7위 | IT 모바일 top20 2주
정가
45,000
판매가
40,500 (10% 할인)
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2022년 02월 22일
쪽수, 무게, 크기 652쪽 | 1198g | 185*240*27mm
ISBN13 9791189909376
ISBN10 1189909375

이 상품의 태그

Clean Code 클린 코드

Clean Code 클린 코드

29,700 (10%)

'Clean Code 클린 코드' 상세페이지 이동

만들면서 배우는 파이썬과 40개의 작품들

만들면서 배우는 파이썬과 40개의 작품들

16,920 (10%)

'만들면서 배우는 파이썬과 40개의 작품들' 상세페이지 이동

Do it! HTML+CSS+자바스크립트 웹 표준의 정석

Do it! HTML+CSS+자바스크립트 웹 표준의 정석

27,000 (10%)

'Do it! HTML+CSS+자바스크립트 웹 표준의 정석' 상세페이지 이동

챗GPT와 업무자동화

챗GPT와 업무자동화

16,200 (10%)

'챗GPT와 업무자동화' 상세페이지 이동

Do it! 쉽게 배우는 파이썬 데이터 분석

Do it! 쉽게 배우는 파이썬 데이터 분석

20,700 (10%)

'Do it! 쉽게 배우는 파이썬 데이터 분석' 상세페이지 이동

Do it! 깡샘의 안드로이드 앱 프로그래밍 with 코틀린

Do it! 깡샘의 안드로이드 앱 프로그래밍 with 코틀린

36,000 (10%)

'Do it! 깡샘의 안드로이드 앱 프로그래밍 with 코틀린' 상세페이지 이동

필독! 개발자 온보딩 가이드

필독! 개발자 온보딩 가이드

22,500 (10%)

'필독! 개발자 온보딩 가이드' 상세페이지 이동

Do it! 쉽게 배우는 R 데이터 분석

Do it! 쉽게 배우는 R 데이터 분석

18,000 (10%)

'Do it! 쉽게 배우는 R 데이터 분석' 상세페이지 이동

나는 네이버 프런트엔드 개발자입니다

나는 네이버 프런트엔드 개발자입니다

15,300 (10%)

'나는 네이버 프런트엔드 개발자입니다' 상세페이지 이동

모두의 딥러닝

모두의 딥러닝

21,600 (10%)

'모두의 딥러닝' 상세페이지 이동

그림으로 공부하는 IT 인프라 구조

그림으로 공부하는 IT 인프라 구조

23,400 (10%)

'그림으로 공부하는 IT 인프라 구조' 상세페이지 이동

이득우의 게임 수학

이득우의 게임 수학

40,500 (10%)

'이득우의 게임 수학' 상세페이지 이동

개발자의 글쓰기

개발자의 글쓰기

16,200 (10%)

'개발자의 글쓰기' 상세페이지 이동

Kotlin in Action

Kotlin in Action

32,400 (10%)

'Kotlin in Action' 상세페이지 이동

쉽게 배우는 앱 인벤터

쉽게 배우는 앱 인벤터

18,000 (10%)

'쉽게 배우는 앱 인벤터' 상세페이지 이동

쉽게 시작하는 타입스크립트

쉽게 시작하는 타입스크립트

32,400 (10%)

'쉽게 시작하는 타입스크립트' 상세페이지 이동

파이썬 코딩의 기술(개정2판)

파이썬 코딩의 기술(개정2판)

28,800 (10%)

'파이썬 코딩의 기술(개정2판)' 상세페이지 이동

챗GPT와 기획·분석·보고

챗GPT와 기획·분석·보고

16,200 (10%)

'챗GPT와 기획·분석·보고' 상세페이지 이동

Do it! 깡샘의 플러터 & 다트 프로그래밍

Do it! 깡샘의 플러터 & 다트 프로그래밍

36,000 (10%)

'Do it! 깡샘의 플러터 & 다트 프로그래밍' 상세페이지 이동

이것이 리눅스다 with RedHat CentOS 8

이것이 리눅스다 with RedHat CentOS 8

28,800 (10%)

'이것이 리눅스다 with RedHat CentOS 8' 상세페이지 이동

책소개 책소개 보이기/감추기

상품 이미지를 확대해서 볼 수 있습니다. 원본 이미지

목차 목차 보이기/감추기

1장 메타버스를 지탱하는 게임 수학

1.1 메타버스가 가져올 새로운 변화
1.2 게임 엔진의 구성
1.3 게임 수학의 구성
1.4 이 책의 실습 환경 구축
__1.4.1 실습 예제 구성
__1.4.2 개발 환경의 구성
__1.4.3 소스 코드의 빌드
__1.4.4 소스 코드의 구성
1.5 정리

1부 | 가상 세계의 구축

2장 수: 가상 세계를 구성하는 가장 작은 단위

2.1 수와 집합
__2.1.1 연산과 수의 구조
__2.1.2 수의 구조
__2.1.3 수의 표현
2.2 함수
__2.2.1 함수의 개념과 종류
__2.2.2 합성함수
__2.2.3 항등함수와 역함수
__2.2.4 곱집합을 활용한 좌표 평면으로의 확장
2.3 정리

3장 벡터: 가상 공간의 탄생

3.1 데카르트 좌표계
3.2 벡터 공간과 벡터
__3.2.1 스칼라와 벡터
__3.2.2 벡터 공간의 연산
__3.2.3 벡터의 크기와 이동
3.3 벡터의 결합과 생성
3.4 정리

4장 삼각함수: 회전을 위한 수학

4.1 삼각함수
__4.1.1 삼각함수의 성질
__4.1.2 각의 측정법
4.2 삼각함수를 활용한 물체의 회전
4.3 삼각함수의 역함수
4.4 극좌표계
4.5 정리

5장 행렬: 가상 세계의 변환 도구

5.1 선형성: 예측 가능한 비례 관계
__5.1.1 선형 함수
__5.1.2 벡터 공간의 선형 변환
5.2 행렬
__5.2.1 행렬의 기본 연산
__5.2.2 행렬의 곱셈
__5.2.3 정방행렬의 곱셈
5.3 행렬의 설계
__5.3.1 크기 변환행렬
__5.3.2 회전 변환행렬
__5.3.3 전단 변환행렬
__5.3.4 삼각함수의 덧셈 정리
5.4 역행렬
__5.4.1 역행렬의 존재를 판별하는 행렬식
__5.4.2 크기 변환행렬의 역행렬
__5.4.3 전단 변환행렬의 역행렬
__5.4.4 회전 변환행렬의 역행렬
__5.4.5 행렬 곱의 역행렬
5.5 정리

2부 | 콘텐츠 제작 기초

6장 아핀 공간: 움직이는 가상 세계의 구축

6.1 이동 변환을 위한 아핀 공간
6.2 아핀 공간의 구성 요소
__6.2.1 점
__6.2.2 이동 벡터
__6.2.3 아핀 공간의 성질
6.3 아핀 결합
__6.3.1 두 점의 결합
6.4 선 그리기 알고리즘
__6.4.1 벡터를 모니터의 점으로 표현
__6.4.2 선 그리기 알고리즘
__6.4.3 라인 클리핑 알고리즘
6.5 정리

7장 내적: 벡터 공간의 분석과 응용

7.1 벡터의 내적
__7.1.1 내적의 성질
__7.1.2 내적과 삼각함수와의 관계
__7.1.3 행렬의 곱셈을 내적으로 표현하기
7.2 시야 판별
__7.2.1 앞뒤 판별
__7.2.2 시야 판별
7.3 조명 효과의 구현
7.4 투영 벡터
7.5 정리

8장 삼각형: 물체를 구성하는 가장 작은 단위

8.1 세 점의 결합
8.2 메시
8.3 무게중심좌표
__8.3.1 무게중심좌표의 계산
__8.3.2 정점에 설정된 부가 정보의 활용
8.4 텍스처 매핑
8.5 정리

9장 게임 엔진: 콘텐츠를 만드는 기술

9.1 게임 엔진의 구성 요소
__9.1.1 씬의 구조
__9.1.2 모델링 행렬의 설계
__9.1.3 로컬 공간과 로컬 축
__9.1.4 리소스 관리
9.2 게임 엔진의 워크플로우
__9.2.1 CK소프트렌더러의 워크플로우
__9.2.2 렌더링 파이프라인
9.3 카메라 시스템
__9.3.1 가상 공간의 카메라
9.4 정리

3부 | 3차원 콘텐츠 제작

10장 3차원 공간: 입체 공간의 생성

10.1 3차원 공간의 설계
10.2 3차원 공간의 트랜스폼
__10.2.1 오일러 각
__10.2.2 회전행렬의 유도
__10.2.3 3차원 모델링 행렬
10.3 카메라 공간
10.4 오일러 각의 특징
__10.4.1 짐벌락 현상
__10.4.2 회전 보간의 계산
10.5 정리

11장 외적: 3차원 공간의 분석과 응용

11.1 벡터의 외적
__11.1.1 평행성 판별
__11.1.2 법선 벡터
__11.1.3 좌우 방향 판별
11.2 벡터로부터 회전행렬 생성
11.3 렌더링 계산량을 줄여주는 백페이스 컬링
11.4 오일러 각의 문제를 해결하는 로드리게스 회전 공식
11.5 삼중곱
__11.5.1 스칼라 삼중곱
__11.5.2 벡터 삼중곱
11.6 정리

12장 원근 투영: 화면에 현실감을 부여하는 변환

12.1 원근 투영 변환의 원리
12.2 동차 좌표계
12.3 깊이 값
12.4 원근 보정 매핑
12.5 깊이 버퍼
12.6 정리

13장 절두체: 최적화된 3차원 공간

13.1 절두체 컬링
__13.1.1 평면의 방정식
__13.1.2 평면의 방정식의 정규화
__13.1.3 평면의 방정식을 활용한 절두체 표현
__13.1.4 원근 투영 행렬로부터 평면의 방정식 만들기
13.2 바운딩 볼륨
__13.2.1 구 바운딩 볼륨의 판정
__13.2.2 AABB와의 판정
13.3 삼각형 클리핑
13.4 정리

4부 | 4차원 수학과 캐릭터

14장 복소수: 2차원 평면의 수

14.1 복소수
__14.1.1 허수
__14.1.2 복소수의 구조
14.2 복소평면
__14.2.1 단위 복소수와의 곱
__14.2.1 켤레 복소수의 회전 변환
14.3 복소수와 행렬의 관계
14.4 정리

15장 오일러 공식: 허수로 표현하는 회전 변환

15.1 자연지수함수
__15.1.1 무리수 e
__15.1.2 자연지수함수
15.2 미분
__15.2.1 도함수
__15.2.2 자연지수함수의 도함수
__15.2.3 sin 함수와 cos 함수의 도함수
15.3 급수
__15.3.1 등비수열
__15.3.2 급수
__15.3.3 매클로린 급수
15.4 오일러 공식
15.5 정리

16장 사원수: 4차원 수로 설계한 3차원 회전

16.1 사원수 대수
__16.1.1 사원수를 구성하는 세 허수
__16.1.2 사원수의 구조
__16.1.3 사원수와 벡터
16.2 사원수의 회전
__16.2.1 사원수와 오일러 공식
__16.2.2 회전 사원수를 이용한 3차원 공간에서의 회전
16.3 사원수의 변환
__16.3.1 오일러 각에서 사원수로의 변환
__16.3.2 사원수에서 오일러 각으로의 변환
__16.3.3 사원수에서 회전 변환행렬로의 변환
__16.3.4 회전 변환행렬에서 사원수로의 변환
16.4 사원수의 보간
16.5 사원수의 활용
16.6 정리

17장 캐릭터: 게임에 생기를 불어넣는 기술

17.1 스켈레탈 애니메이션
17.2 트랜스폼 계층 구조
__17.2.1 트랜스폼 계층 구조의 변환
__17.2.2 로컬 트랜스폼으로부터 월드 트랜스폼의 계산
__17.2.3 월드 트랜스폼으로부터 로컬 트랜스폼의 계산
17.3 캐릭터 메시와 애니메이션
17.4 정리

저자 소개 (1명)

출판사 리뷰 출판사 리뷰 보이기/감추기

| 이 책의 대상 독자 |

- 유저가 자유롭게 조종할 수 있는 3차원 가상 세계를 직접 만들고 싶은 개발자
- 게임 엔진을 직접 만들어보고 싶은 게임 개발자
- 벡터를 화면에 시각화하는 원리가 궁금한 테크니컬 아티스트
- 벡터, 행렬로 구성된 선형대수학의 기초를 배우고 싶은 학생이나 개발자, 아티스트
- 3차원 그래픽과 관련된 기초 이론을 배우고 싶은 학생이나 개발자, 아티스트
- 게임 엔진이 사용하는 사원수 체계와 그 구현 방법이 궁금한 게임 개발자

| 이 책의 구성 |

이 책은 수학의 기초 지식을 배우거나 다시 정리하고 싶은 이들, 혹은 수학을 중도포기한 경험이 있는 게임 개발자와 그래픽 디자이너들을 위해 집필했다. 주된 내용은 선형대수학으로 분류할 수 있겠으나, 그중에서도 컴퓨터 그래픽스에 특화된 선형대수학이라고 할 수 있겠다. 이 책은 총 4개 부로 구성되어 있고, 1부에서 시작해 점점 완성도를 높여나가 4부에서 마무리하도록 순차적으로 구성됐다.

이 책의 서막을 여는 1장 ‘메타버스를 지탱하는 게임 수학’에서는 메타버스로 더욱 발전하게 될 인터넷 세상에서 게임 수학이 왜 필요한지에 대한 이야기를 풀어봤다. 1부 ‘가상 세계의 구축’에서는 수의 질서로부터 만들어지는 가상 공간의 구조와, 가상 공간에서의 변환의 개념을 이해해 원하는 대로 공간의 질서를 바꾸는 방법을 다룬다.2장 ‘수: 가상 세계를 구성하는 가장 작은 단위’에서는 증명할 필요가 없는 자명한 명제인 공리로부터 수의 구조를 정의하고 함수의 기초 개념과 연산에 대해 배워본다. 이어 3장 ‘벡터: 가상 공간의 탄생’에서는 벡터 공간을 정의하고 2차원 벡터 공간을 배경으로 연산과 여러 개념을 학습해 가상 세계를 구성하는 기초 이론을 다진다. 4장 ‘삼각함수: 회전을 위한 수학’에서는 벡터 공간의 회전 변환을 위해 필수적으로 알아야 하는 삼각함수를 알아본다. 1부의 마지막 5장 ‘행렬: 가상 세계의 변환 도구’에서는 선형 변환의 개념을 정립하고 행렬을 활용해 벡터 공간의 변환을 학습하는 것으로 마무리한다.

2부 ‘콘텐츠 제작 기초’에서는 1부에서 정리한 수학 이론을 바탕으로 콘텐츠를 담는 공간인 아핀 공간을 정의하고 아핀 공간에서 2차원 게임을 만드는 데 필요한 구현 방법을 살펴본다. 6장 ‘아핀 공간: 움직이는 가상 세계의 구축’에서는 선형 변환의 형태로 이동, 회전, 크기 변환을 지원하는 아핀 공간과 그 구성 요소를 살펴본다. 아핀 공간에서 정의한 점들이 모여 선을 이루는데, 컴퓨터에서 선을 효과적으로 그리는 알고리즘도 함께 소개한다. 7장 ‘내적: 벡터 공간의 분석과 응용’에서는 벡터 공간을 분석하고 다양한 상황에 적용할 수 있는 연산인 내적과 그 응용 방법을 배워본다. 이와 같이 6장과 7장에서 콘텐츠 제작에 필요한 수학적 기반을 확립한 후, 8장 ‘삼각형: 물체를 구성하는 가장 작은 단위’부터는 수학으로 정의한 삼각형을 토대로 가상 공간의 사물을 형성하는 방법을 다룬다. 이어지는 9장 ‘게임 엔진: 콘텐츠를 만드는 기술’에서는 다양한 사물을 한 공간에 모으고 카메라를 관리하는 게임 엔진의 구조와 실시간으로 콘텐츠를 그려내기 위한 워크플로우를 소개한다.

3부 ‘3차원 콘텐츠 제작’에서는 2부에서 다룬 2차원 게임 엔진 구조를 3차원으로 확장시키는 내용을 담았다. 10장 ‘3차원 공간: 입체 공간의 생성’에서는 3차원 공간을 설계하는 방법과 3차원 공간에서 회전 변환과 카메라 변환을 구현하기 위한 방법과 고려할 사항을 알아본다. 3차원 공간을 분석하고 응용하는 연산인 외적을 학습하는 11장 ‘외적: 3차원 공간의 분석과 응용’에서는, 7장에서 배운 내적과 함께 응용해 3차원 공간에서 활용할 수 있는 다양한 응용 방법을 살펴본다. 12장 ‘원근 투영: 화면에 현실감을 부여하는 변환’에서는 3차원 콘텐츠를 표현할 때 필수적으로 적용해야 할 원근감을 구현하는 방법과 이로 인해 발생하는 새로운 문제와 대처 방법을 배운다. 그리고 3부의 마지막 13장 ‘절두체: 최적화된 3차원 공간’에서는 평면의 방정식을 소개하고 다수의 평면을 조합해 절두체라는 닫힌 공간을 수학적으로 정의한 후 이를 활용해 시야에 보이는 물체만 그려내는 기법을 다루면서 3차원 게임 엔진을 마무리한다.

4부 ‘4차원 수학과 캐릭터’에서는 3부에서 제작한 3차원 게임 엔진에서 회전 변환을 안정적으로 구현하기 위한 수학과 캐릭터를 제작하는 방법을 다룬다. 3차원 공간에서의 변환이 깔끔하게 동작하기 위해서는 4차원 공간의 수인 사원수를 활용해 회전 변환을 설계해야 한다. 사원수는 대학교 선형 대수나 공업 수학에서도 다루지 않는 생소한 주제다 보니, 이를 제대로 학습하기 위한 교재나 자료가 충분하지 않다. 이 책에서는 밑바닥에서 사원수를 올바르게 이해할 수 있는 선행 내용으로서 14장 ‘복소수: 2차원 평면의 수’에서는 복소수, 15장 ‘오일러 공식: 허수로 표현하는 회전 변환’에서는 오일러 공식을 다룬다. 이를 기반으로 16장 ‘사원수: 4차원 수로 설계한 3차원 회전’에서는 사원수의 구조를 설명한 후, 실제 게임 엔진에 적용할 때 필요한 응용 방법을 총정리해서 3차원 게임 엔진의 기본 기능을 완성하도록 구성했다. 마지막으로, 이 책의 대단원인 17장 ‘캐릭터: 게임에 생기를 불어넣는 기술’에서는 게임 엔진에 계층 구조를 구현하는 방법을 다루는데, 이러한 계층 구조를 활용해 가상 공간에서 움직이는 캐릭터를 제작할 수 있도록 그 응용 방법을 알아본다.

| 이 책을 활용하기 위한 개발 환경 |

수학을 기반으로 렌더링의 모든 과정을 직접 체험하고 배울 수 있도록 그래픽카드 GPU를 활용하지 않고 CPU 프로그래밍에서 모든 것을 다 제작하도록 교안을 설계했다. 이렇게 GPU를 사용하지 않고 컴퓨터 그래픽을 구현하는 프로그램을 보통 소프트렌더러(Soft renderer)라 부르는데, 예제의 이름은 내가 재직 중인 학교 이름을 따서 CK소프트렌더러로 지었다. CK소프트렌더러는 CPU만으로 동작하다 보니 현업 실무에서 사용하기에는 적합하지 않지만, 렌더링의 모든 과정을 직접 구현해볼 수 있기 때문에 유용한 학습 교재라고 할 수 있다. 렌더링 속도를 향상시키기 위해 다소 진입 장벽이 높은 C++ 언어를 사용했고, 윈도우 10 운영체제상의 비주얼 스튜디오 2022와 2019를 기준으로 예제를 제작했다. 예제를 실습하기 위해서는 기본적으로 C++ 프로그래밍 능력이 필요하지만, 혹여 독자가 C++ 프로그래밍을 몰라도 결과를 확인할 수 있도록 완성된 예제도 함께 제공한다. 또한 다음 페이지에서는 이 책의 실습 예제를 실행한 전체 예제의 결과 화면을 한눈에 볼 수 있다. 혹시 프로그래밍을 잘 몰라도 게임 제작에 수학이 어떻게 활용되는지 쉽게 이해할 수 있을 것이다.

〈실습 예제 결과 화면 미리보기〉
- https://bit.ly/math4game

[지은이의 말]

최근 인터넷 산업 분야에서 메타버스라는 키워드가 새로운 화두로 떠오르게 되면서 3차원 가상 공간과 가상 캐릭터 제작에 사용된 기술이 더 큰 주목을 받고 있다. 이러한 기술은 그동안 주로 게임 산업에서 발전되어 왔는데, 메타버스의 급부상과 함께 게임 제작뿐만 아니라 영화, 드라마, 방송 미디어는 물론, 콘서트, 쇼핑몰 같은 다양한 분야에 널리 활용되는 등 오늘날 팬데믹 시대에 걸맞는 미디어 제작 도구로 활용되면서 이제는 정치, 경제, 사회, 문화의 모든 방면으로 확산되고 있다. 게임 엔진은 가상 세계와 가상 캐릭터에 관련된 기술을 가장 효과적으로 집약한 최첨단 소프트웨어다. 최근 추이에 따라 게임 엔진의 활용범위가 넓어지면서 더욱 정밀하고 고도화된 가상 공간에 대한 요구도 한층 높아지고 있다. 또한 이러한 환경에서 많은 실무 개발자들이 실감하는 것이 바로 수학의 필요성이다. 그런데 막상 수학에 대해 즐겁게 이야기하는 사람은 그리 많지 않다. 학창 시절 주입식, 암기식 수학 교육으로 인해 학습을 중도 포기했거나, 학창 시절에는 수학 실력이 그럭저럭 평균 이상이었지만, 현업에서 패턴화된 개발을 반복하다 보니 어릴 적 쌓아둔 수학 지식마저 점점 쇠퇴해가는 현실을 느끼는 사람이 많을 것이다. 나 또한 그랬다.

희미해진 수학에 대한 기억을 되살리기 위해 중고등학교 때 배웠던 수학 교과서를 다시 펼쳐봐야 한다는 사실은 막막하기도 하다. 학창 시절 수학을 좀 더 열심히 공부하지 않았던 과거의 나 자신을 탓하게 된다. 하지만 이는 과거의 내가 잘못한 것이 아니라, 입시만을 위한 주입식 교육으로 점철된 수학 교육 시스템 탓이다. 나의 경험을 이야기해보자면, 게임 엔진에서 콘텐츠 만드는 일을 반복하는 것에 지루함을 느껴, 나만의 게임 엔진을 만들어보자는 결심을 하면서 수학의 필요성을 자각하게 됐다. 이때부터 수학에 관련된 다양한 책과 위키피디어 사이트, 인터넷 정보를 통해 굳어버린 뇌를 하나씩 풀어나갔다. 나름의 방법으로 수학에 대한 감각을 회복하자, 깨닫게 되었다. 과거의 나는 딱히 잘못한 것이 없었다. 굳이 나의 잘못을 꼽자면, 수학을 어떻게 활용해야 할지 몰랐으며, 남이 시키는 대로 문제의 답만 구하려 했다는 점이다. 지금 생각해보면 순서가 잘못된 것이었다. 수학을 배우기 전에 내가 무엇을 해야 할지 정하는 것이 가장 중요했다.

그렇기에 이 책은 전반적인 수학 이론을 다루는 교양서도, 특정 분야를 심도 있게 다루는 전문 수학 서적도 아니다. 수학 서적에서 흔히 볼 법한 복잡한 방정식의 해를 구하는 문제는 이 책에서 등장하지 않는다. 게임 제작, 컴퓨터 그래픽스에 관심 있는 사람이 모니터 화면에 무언가를 표현할 때 필요한 수학 개념을 실용적인 방법으로 소개하는 것이 이 책의 가장 큰 목표다. 이는 다시 수학을 공부하려 했을 때 막막했던 과거의 내 심정을 반영한 것이다. 이 책을 쓰기 위해 가상 공간의 가상 캐릭터를 가장 단순한 형태로 보여주는 CK소프트렌더러라는 예제를 먼저 제작했다. 그 후에는 역순으로, 예제를 만드는 데 필수적인 수학 요소를 정리해 기록하면서 가장 밑바닥에 있는 수학적 공리까지 도달한 후에야 비로소 책의 목차를 만들 수 있었다. 게임 제작에 관련된 재미있는 움직임과 화려한 예시를 얼마든지 담을 수도 있었지만, 수학적 원리와 응용 방법을 설명하는 데 이미 많은 지면을 할애했을 뿐더러 이 책의 주제가 게임 수학이다 보니 무엇보다도 근본적인 원리에 집중하기 위해 실습 예제는 최대한 간단하게 고안했다(사실적이고 역동적인 움직임을 구현하고 화려한 비주얼을 만드는 컴퓨터 그래픽스의 원리가 궁금한 독자들은 다른 서적을 참고하기 바란다).

이 책의 초고를 작성하면서 책 내용을 바탕으로 틈틈이 두 학기 동안 강의하면서 나의 노력이 헛되지 않았음을 확인할 수 있었다. 내심 수학을 두려워 했던 학생들이 더 이상 수학을 어려워하지 않게 됐으며, 학습한 수학 이론을 활용해 가상 공간의 캐릭터를 제손으로 마음껏 창조해낼 수 있게 됐으니 말이다. 이 책의 내용이 매우 쉽다고 과장하지는 않겠다. 책 내용을 모두 이해하고 자기 것으로 만드는 과정은 험난할지도 모른다. 쉽지 않은 여정이겠지만 독자 여러분이 이 책을 통해 수학에 대한 해방감을 만끽해볼 수 있다면 저자로서 큰 보람이겠다. 여러분의 건승을 기원한다.

추천평 추천평 보이기/감추기

좋은 개발자로서 갖춰야 할 역량이란 게 무척이나 다양하겠지만 최근 들어 급부상한 인공지능과 머신러닝, 그리고 메타버스와 같은 흐름 속에서는 필수적으로 두 가지를 갖춰야 한다고 생각합니다. 바로 알고리즘과 수학입니다. 이 두 가지 바탕이 탄탄하지 않으면 그 위에 어떤 경험을 통해 무엇을 쌓아올려도 깊이감이 없는, 그리고 적응력이 떨어지는 인재가 될 수밖에 없습니다. 헌데 매우 개인적인 경험입니다만, 이 두 가지는 막상 필요해질 때 배우려고 하면 원하는 수준까지 끌어올리기가 매우 어려운 것 같습니다.정규 교과 과정에 포함되어 있어 억지로라도 열심히 해야 할 때는 어떻게든 머리에 넣기 위해 꾸준히 노력을 하게 되는데, 정작 본업에서 필요한 시점에는 그처럼 열심히 공부하기가 쉽지 않았습니다. 아마도 “이게 내가 지금 하는 일과 무슨 관계가 있을까?”라는 의심이 끊이지 않기 때문일 것입니다.이 책은 그런 의문에 대해 각 단계마다 예제를 통해, 자신이 하고자 하는 일과 무슨 관계가 있는지 답을 제공함으로써 컴퓨터 그래픽스와 게임 분야에 필요한 수학을 부단히 학습할 수 있게 도와줍니다. 부디 많은 분이 이 책을 통해 자신의 학업이나 업무에 필요한 수학의 기반을 이번에는 확실히 다져나갈 수 있길 기원합니다.
- 김동현 (넷마블 AI/DX 담당 전무)
게임 수학은 한마디로 정의되기 상당히 어려운 단어입니다. 실상은 컴퓨터 그래픽스와 관련된 내용이 상당 부분 포함되어 있지만, 여기서 다루는 그래픽스 유관 분야들이 수학에 있어서 매우 깊이 있는 토대를 필요로 하기 때문입니다. 선형대수의 행렬과 벡터는 물론이거니와, 복소수, 공간도형, 미분과 적분 등의 다양한 수학적 지식을 도구로 사용해야 하기 때문입니다. 그 바탕에는 수 체계에 대한 이해와 이를 정의하기 위한 집합론 그리고 수열, 극한 등의 방대한 수학적 밑바탕 또한 필요로 합니다. 과거 게임 개발자가 되기 위해서는 이 모든 분야에 대해서 각 분야별로 별도의 교재를 통해 공부해야만 했습니다. 이번 이득우 교수님의 책을 미리 읽어보면서 가장 감탄한 것이 이 부분이었습니다. 과거의 모든 게임 개발자들이 겪어야 했던 수많은 시행착오를 하나의 교재로 집대성했기 때문입니다. 저 역시 학생들에게 게임 수학을 가르치는 입장에서 이 책은 반드시 장서 목록에 갖춰야 하는 필독서로 추천하고 싶습니다. 특히 상용 엔진 사용이 일반화된 현 개발 환경에서 수학적 기초는 향후 오랜 시간 개발자로서 존속하는 데 필수요소라 생각합니다. 현역 개발자들에게도 자신의 미진했던 부분을 보완할 수 있는 든든한 자양분이 될 것이라 확신합니다. 이와 같이 좋은 책을 집필하고 세상에 펴내주신 이득우 교수님에게 진심으로 감사의 말씀을 전하며 모두에게 일독(一讀)을 권합니다.
- 김용준 (엠게임 Project-X 개발팀 PM)
선형대수, 공업수학, 컴퓨터 그래픽스를 동시에 배울 수 있는 책. 직선 하나로 시작하지만 책 마지막에 이르면 사원수를 직접 구현한 게임 엔진을 만나게 될 것이다. 이 모든 것을 다룸에 있어서, 간단한 삼각형을 출력하는 것으로 시작해서 3차원 공간에 텍스처 매핑이 된 물체를 렌더링하는 방법까지 구체적으로 설명한다. 대단원인 마지막 17장의 스켈레탈 애니메이션의 구현 방법은 이 책을 끝까지 읽은 사람들을 위한 선물이다. 행렬과 벡터를 다시 공부하고 싶은 사람, 나만의 게임 엔진을 만들고 싶은 사람에게 강력 추천한다. 이 책의 설명은 간결하고 쉬우나, 담고 있는 내용은 결코 가볍지 않다.
- 김종원 (NCSOFT 게임 테스트자동화 팀장)
이 책의 추천글을 의뢰받고 집에서 원고를 살펴보던 중 초등학교에 다니는 첫째 아들이 관심을 보였다. 아버지의 영향을 받아서 그런지 장래 희망이 게임 프로그래머인 녀석이다. 수학에 소질은 있어 보이는데, 문제는 유튜브나 게임에 빠져 공부를 매우 지루해 한다. 그토록 재미있는 게임이 그렇게 지루해 보이는 수학으로 만들어진다는 사실이 의외로 느껴지는 모양이다. “이 녀석아, 네가 나중에 훌륭한 게임 프로그래머가 되고 싶다면 수학 공부를 열심히 해야 한다고!”나날이 발전하고 있는 게임 엔진이 밑바닥에 깔린 수학적 처리를 알아서 해 주기 때문에, 이런 수학적 기초가 부족해도 게임 프로그래머가 될 수는 있다. 하지만, 나는 아들이 게임 프로그래머가 되겠다면 반드시 수학적 기초를 쌓기를 권할 것이다. 게임 강국임에도 불구하고 그동안 우리나라에서는 수학 이론이 게임에 어떻게 활용되는지 구체적으로 다룬 책을 보기 힘들었다. 대학에서 항상 진취적으로 연구 개발 활동을 해 오시던 이득우 교수님께서 또 한 번 국내 게임 업계에 의미 있는 공헌을 하신 것 같다. 무엇보다도 3D 게임이 시각적으로 형상화되는 각각의 단계에 수학 이론이 어떻게 적용되고 있는지 실습을 통해서 차근차근 체험할 수 있도록 구성된 점이 돋보인다. 게임 프로그래머뿐만 아니라 3D 게임이 어떻게 만들어지고 움직이는지 이해하고 싶은 일반 유저들과 기획자, 디자이너들에게도 추천한다. 물론 우리 아들에게도 고등학생이 되면 꼭 읽어보라고 권할 것이다.
- 박기성 (컴투스 제작5본부 본부장 겸 이사)
게임 개발을 오래 했지만, 주로 콘텐츠 프로그래밍을 하다 보니 수학이 꼭 필요하진 않았다. 그래도 마음 한편에는 아쉬움이 남아서 진지하게 수학을 공부할 때도 있었다. 하지만 누구나 그렇듯이 회사 일은 항상 바빴고, 공부했던 수학은 생각보다 써먹을 곳이 없었다. 써먹지 않다 보니 수학 공부에 들인 시간보다 훨씬 빠른 속도로 까먹기 일쑤였다. 놀거리, 볼거리는 넘쳐났고 아이들이 태어나면서 내 시간은 점점 줄어들었다. 이런 일이 반복되다 보니 요령껏 필요한 만큼만 배우고 궁금한 점은 검색해서 개발하곤 했다.이 책을 읽으면서 새삼 깨달은 점은 게임에 사용되는 수학의 대부분은 이미 중고등학교 때 모두 배웠다는 사실이다. 생각보다 어렵지 않다. 게임 수학은 달라진 점이 없을 테니 내가 해볼 만하겠다라고 생각하게 만든 일등공신이 바로 이 책일 것이다. 쉽고 자세하면서도 직접 만든 소프트렌더러를 활용한 코드와 함께 설명해주므로, 책을 읽다 보면 ‘게임 수학, 해볼 만하겠다’는 생각이 절로 든다.게임 개발뿐만 아니라 머신러닝, 인공지능같이 수학을 필요로 하는 분야는 점점 늘어나고 있다. 그리고 애들이 컸을 때 수학 문제를 함께 풀어줄 수 있는 멋진 부모가 되고 싶다. 수학을 다시 들여다보고 사랑해보고 싶은 마음이 들었다. 좋은 책 만들어주신 득우 님, 감사합니다.
- 박일 (NCSOFT TL 개발팀)
제 일화를 하나 고백하자면. 프로그래머로서 게임 개발을 시작했지만 저는 고등학교 시절 수학 포기자였습니다. 제가 게임 개발을 처음 시작한 90년대 초에는 게임 개발에 관한 정보가 전무했기에 바닥부터 모든 것을 다 만들어야 했으나, 수학을 몰라도 그다지 어려움을 겪은 적은 거의 없었습니다. 그러나 90년대 말 본격적으로 3D 게임을 개발하게 되면서부터는 모든 상황이 달라졌습니다. 한글로 된 정보가 없을 뿐더러, 수식에서 막혀 이해하느라 몇 날 며칠을 씨름한 적도 많았습니다. 그후 세월이 흘러 그사이 좋은 게임 엔진이 많이 등장하면서 또 한 번 수학의 필요성은 다소 줄어들었을 수도 있습니다. 하지만, 수학에 대한 이해가 부족하다면, 막상 중요한 혁신이 필요한 순간 막히게 됩니다. 수학의 기초를 탄탄히 쌓아둔다면, 당장의 문제를 넘어 게임 자체에 대해 고민하는 데 더 많은 시간을 쓸 수 있으며 좀더 창의적인 게임을 만드는 데 큰 도움이 됩니다. 따라서 이 책이 게임 개발자분들에게 좋은 자양분이 되리라 기대합니다. 책을 읽으면서 저도 교수님께 배우고 싶다는 생각이 많이 들었습니다.
- 서관희 (원더스쿼드 대표이사)
디지털 트랜스포메이션으로 시작되는 미래를 위한 메타버스의 핵심 기술은 바로 실시간 3D 렌더링입니다. 이와 같은 실시간 3D 렌더링을 잘 활용하기 위해서는 기반 기술에 대한 이해가 필요한데, 그것은 바로 수학입니다. 렌더링 기술을 개발하고 개선하며 활용하는 프로그래머와 렌더링 기술을 활용해 새로운 멋진 콘텐츠를 제작하는 아티스트, 특히 테크니컬 아티스트에게 수학에 대한 이해와 지식은 필수입니다. 하지만 실시간 3D 렌더링에 필요한 수학적인 이해를 체계적으로 이해하고 배우는 것은 결코 쉬운 일이 아닙니다. 실시간 3D 렌더링의 핵심 기술인 게임 엔진에 대한 높은 이해를 바탕으로 학교에서 직접 학생들을 가르치며 쌓아오신 이득우 교수님의 노하우가 담긴 『이득우의 게임 수학』은 실시간 3D 렌더링에 필요한 수학적 지식을 실시간 3D 렌더링 예제와 함께 체계적으로 배울 수 있는 정말 추천할 만한 책입니다. 실시간 3D 렌더링 엔진 프로그래머와 테크니컬 아티스트를 준비하시는 분들과 렌더링을 확실하게 이해하고 싶은 실무자분들에게 적극 추천합니다. 이 책을 완독해서 기반을 다진 후에는 실제 사용 사례를 살펴볼 수 있는 언리얼 엔진의 풀 소스 코드를 통해 이해와 학습 수준도 높여보기 바랍니다.
- 신광섭 (에픽게임즈 코리아 엔진 비즈니스 리드)
이따금씩 게임 개발에 입문하고자 하는 학생들이 뭘 공부하면 좋을지 물어보는 경우가 더러 있다. 그때마다 나는 주저하지 않고, 게임을 즐겁게 오래 개발하고 싶다면 ‘수학’을 꼭 공부하라고 얘기해 준다. 하지만 수학이라는 것이 워낙 광범위하기 때문에 어디서부터 시작해야 할지 막막한 분들도 있으리라 생각한다. 그런 분들에게 이 책은 게임 개발에 필요한 기본적인 수학 개념은 물론, 컴퓨터 그래픽스 이론과 캐릭터 애니메이션까지 맛볼 수 있는 구성으로 짜여져, 한 권으로 게임 엔진이 돌아가는 전체적인 원리를 파악하기에 더할 나위 없는 내용을 담고 있다. 특히 코드를 통한 예제를 적절히 삽입하여 독자들의 이해를 높이기 위해 노력했다는 점도 눈에 띄는 구성이라 할 수 있겠다.게임 개발을 지망하는 학생들이라면 꼭 읽어봐야 할 책이다. 이 책을 발판 삼아 훌륭한 개발자들이 앞으로도 더 많이 배출되었으면 하는 바람이다.
- 신효종 (아이도스 몬트리올(Eidos Montreal) 시니어 애니메이션 프로그래머)
10년 전만 해도 게임 엔진은 오늘날처럼 미려하지도 않거니와 기능도 풍부하지 않아서 개발 난이도가 높은 편이었다. 하지만, 오늘날은 유니티나 언리얼 등 위지윅?WYSIWYG? 기반의 상용 게임 엔진이 보편화됨에 따라 게임 등의 콘텐츠 개발의 난이도가 낮아졌다. 그러다 보니 때로는 상용 게임 엔진들이 수학의 필요성을 못 느끼게 한다는 비난을 받기도 한다. 그러나 오히려 수학을 알아야 게임 엔진을 더 잘 사용할 수 있고 한계를 넘어선 활용이 가능하다.이 책은 게임 엔진에 의존하는 것이 아니라, 게임 그래픽을 표현하는 핵심 원리부터 캐릭터 애니메이션 등을 직접 구현함으로써 게임 개발에 필요한 수학을 이해하도록 유도한다. 더불어 게임 엔진의 기본 구조를 직접 구현함으로써 상용 게임 엔진을 더욱 잘 이해하고 활용할 수 있는 기반을 마련한다. 한층 더 업그레이드되고 싶은 모든 게임 프로그래머들에게 강력 추천한다.
- 오지현 (유니티 테크놀로지스 코리아 에반젤리스트)
게임 엔진을 처음 공부하다 보면 ‘그래픽’과 ‘프로그래밍’을 동시에 이해해야 하는 첫 번째 관문을 만나게 된다. 몇 개월간 게임엔진을 공부하며 간신히 첫 관문을 통과하고 나면 그 뒤에는 최종 보스처럼 서 있는 ‘수학’을 맞닥뜨리게 된다. 하지만 우리는 더 이상 최종 보스에 떨 필요가 없다. 『이득우의 게임 수학』이 우리의 손에 있기 때문이다. 게임 수학을 ‘공간’, ‘물체’, ‘회전’으로 쉽게 분류하여 이론적으로 설명하고 예제 중심으로 풀어낸 이 책을 하나씩 따라 하다 보면 자연스럽게 실시간 그래픽 수학에 몰입하여 레벨업되고 최종 보스를 물리치고 있는 자신을 만날 수 있을 것이기 때문이다.
- 장욱상 (중앙대학교 첨단영상대학원 영상학과 실감 미디어/애니메이션 콘텐츠 전공 교수)
최근의 게임제작을 다루는 다른 책들이 그러하듯 이 책은 상당부분을 3D 공간을 다루는 데 필요한 선형대수학에 할애하고 있습니다. 하지만 따분하게 행렬 벡터 관련 수식만 보다가 끝나는, 어쩌면 당장 3D로 뭔가를 해보고 싶은 독자들에게는 너무나 지루할 수 있는 다른 서적들과는 달리, 이 책에서는 저자가 제공하는 경량화된 3D 렌더링 툴을 통해 직접 코드를 작성해가며 내용을 좀 더 직관적으로 이해할 수 있도록 도와줍니다.오늘날 대부분 유니티나 언리얼 엔진 같은 상업적으로 크게 성공한 게임엔진들을 사용하여 게임을 만들고 있기에 이 책에서 다루는 많은 부분들을 실제로는 툴이 해결해주고 있다고 하더라도, 이 책의 내용은 여전히 유용하며, 우리가 사용하고 있는 게임 엔진에 대한 이해를 높이는데 큰 도움이 될 거라 생각합니다. 이렇게 실용적인 내용을 광범위하게 다루는 책을 번역서가 아닌 한국인 저자의 서적으로 읽어볼 수 있어서 개인적으로 상당히 기쁘고 즐거웠습니다.
- 정원희 (블리자드 엔터테인먼트 시니어 소프트웨어 엔지니어)
예전에 이득우 교수님과 공항에서 맥주를 한잔 가볍게 하고 탄젠트의 정의를 물어본 적이 있었습니다. 가볍게 탄젠트라는 이름의 유래를 물어본 것이었는데, 사실 평소에 그렇게 말이 많은 편이 아니시던 이득우 교수님이 눈을 반짝이면서 탄젠트의 아름다움과 그 철학적 정의에 대해 열변을 토하시는 모습을 처음 보았습니다. 사실 저 같은 문과 출신에게는 “탄젠트란 ‘접한다?touching?는 뜻의 라틴어 tangens’에서 유래한 것이다” 정도의 설명으로도 충분했는데 말입니다!!!가벼운 술기운에서 시작한 대화라 모두 이해할 수는 없었지만, 적어도 수학이 어떻게 철학으로 연결되는지에 대한 강한 인상을 받았던 짧은 대화였습니다. 시중에 많은 수학 서적이 있지만, 게임에 대한 수학 책은 많은 편이 아닙니다. 그리고 그중에서도 수학에 대한 애정과 철학을 가지신 분이 쓴 책은 더더욱 적을 것입니다. 무언가를 제대로 배우기 위해서는 그 분야에 철학을 가진 사람에게 배우는 것이 좋다고 생각됩니다. 또한 책에는 그 책을 쓴 사람의 생각이 그대로 담겨 있기 마련이죠. 그러므로 이 책에서 이득우 교수님의 수학 설명과 함께 수학에 대한 애정과 그 철학을 느껴보실 것을 강력히 추천드리는 바입니다.
- 정종필 (데브캣 D1실 부실장)
디지털 에이전시에서 상용 게임 엔진을 사용해서 소위 미디어 아트, 인터랙티브 인스톨레이션 등의 리얼타임 콘텐츠를 만드는 일들을 하고 있습니다. 이미 만들어져 있는 상용 게임 엔진을 사용해 작업을 하면서 항상 컴퓨터 그래픽스의 원리가 궁금했습니다. 하지만 비전공자로서 컴퓨터 그래픽스는 그 진입 장벽이 상당히 높았고 어떻게 체계적으로 접근해야 할지 몰랐습니다. 하릴없이 필요에 따라 단편적인 지식으로 채워질 수밖에 없었고, 그 비어 있는 부분을 채우고 싶은 갈증에 항상 목이 말랐습니다. 그런 와중에 이득우 교수님께서 ‘게임 수학’ 책을 집필하신다는 소식은 제게 가뭄의 단비와 같은 소식이었습니다. 컴퓨터 그래픽스의 기반이 되는 수학의 개념부터 삼각함수, 벡터, 행렬, 그리고 게임 엔진에서 필수로 쓰이는 사원수의 원리까지 차근차근 다루고, 그저 수식과 수도 코드만이 아닌 작동하는 실제 소프트렌더러를 C++로 라인 바이 라인으로 설명해주면서 독자가 직접 실습해볼 수 있는 책이기 때문에 더욱더 값진 것 같습니다.이 책이 저와 같은 고민과 지식의 갈증을 느끼는 독자들에게 많은 도움이 될 것이라 확신합니다.
- 최승호 (자이언트스텝 RX사업본부 RX1팀 실장)
〈심시티〉라는 게임으로 컴퓨터를 처음 접한 뒤 컴퓨터를 배우면서 직접 게임을 만들어 보고 싶다는 열망이 들었다. 그래서 독학으로 게임을 만들기도 하고, 실제 게임 회사에 취업을 하기도 했다. 게임을 만든다는 것은 일반 소프트웨어 개발과 많은 점에서 다른데, 특히 그래픽을 다루는 것이 그렇다. 게임 그래픽은 어느 정도 수학과 물리 학습의 기초가 필요한 분야다. 한 번은 3D 엔진을 직접 만들어 보고 싶어서 고등학교 수학책을 다시 뒤적이면서 행렬과 삼각함수 등의 개념을 공부했던 기억이 난다. 학창 시절에는 억지로 수학 공부를 했는데, 게임 엔진을 만드는 데 필요하다 보니 자발적으로 공부를 하게 되더라. 수학 이론을 적용해서 짠 코드가 모니터에 표시되는 그래픽으로 나타나는 것을 보면서, ‘이런 용도로 쓰는 거구나’라며 깨우치기도 했다. 만약 내가 게임 수학을 공부하던 당시에 이 책이 있었다면 게임에 필요한 수학을 좀 더 쉽고 체계적으로 배울 수 있지 않았을까 싶다.목적이 없는 교육은 학생들이 재미를 느끼고 배우기가 쉽지 않다. 게임을 만들고 싶은 사람들에게, 수학이 왜 필요하고 어떻게 쓰이는지를 설명하고 제대로 다루는 이 책은 매우 좋은 교과서가 될 수 있다. 오랜 시간 게임 업계에서 이야기꾼으로 활동해오신 저자분이 아주 재미있게 글을 써주시기도 했고, 실습 예제와 함께 체험해볼 수 있도록 만들어서 독자들이 흥미를 잃지 않게 잘 구성되어 있다. 저자분이 학교에서 학생들을 가르치면서 얻었던 교수 경험을 바탕으로 쓰였기 때문인 듯하다. 이 책을 통해 더 많은 이들이 게임 수학을 쉽고 재미있게 배우고, 게임 프로그래밍의 세계에 입문하는 계기가 되길 바란다.
- 황리건 (원티드랩 개발 총괄 이사)

회원리뷰 (7건) 리뷰 총점9.8

혜택 및 유의사항?
구매 이득우의 게임 수학 리뷰 내용 평점5점   편집/디자인 평점5점 g*****0 | 2022.03.01 | 추천3 | 댓글0 리뷰제목
현존하는 그래픽스 서적중에 이보다 수학의 기초를 다지기 좋은 책은 없다고 봐도 무방하다 DX나 OpenGL이 아닌 , 저자가 만든 라이브러리를 통해 모든 실습이 이루어지기 때문에 게임 수학을 배우려는 초보자에게는 정말 좋은 환경이라고 할 수 있다 소스 코드에 주석도 굉장히 상세하게 달려있고 직접 실행해서 결과물도 바로 볼 수 있어서 매우 좋았다 단순히 개념만 설명해주;
리뷰제목

현존하는 그래픽스 서적중에 이보다 수학의 기초를 다지기 좋은 책은 없다고 봐도 무방하다

DX나 OpenGL이 아닌 , 저자가 만든 라이브러리를 통해 모든 실습이 이루어지기 때문에 게임 수학을 배우려는 초보자에게는 정말 좋은 환경이라고 할 수 있다

소스 코드에 주석도 굉장히 상세하게 달려있고 직접 실행해서 결과물도 바로 볼 수 있어서 매우 좋았다

단순히 개념만 설명해주고 끝내는 것이 아니라

이 수학적인 개념이 '게임'에서 어떻게 사용되는지 알려주면서 이 개념을 배워야 하는 이유를 항상 독자에게 납득시켜준다

정말 수학의 기초를 배우고 싶다면 쓸데없이 방대하고 어려운 dx로 시작하는것이 아니라 이 책으로 먼저 공부해야 한다.

 

 

여담으로 종이 질감이 정말좋다...  

 

 

 

 

 

 

 

 

 

3명이 이 리뷰를 추천합니다. 공감 3 댓글 0
포토리뷰 [도서] 이득우의 게임 수학 내용 평점5점   편집/디자인 평점5점 YES마니아 : 로얄 r****a | 2022.02.27 | 추천3 | 댓글0 리뷰제목
게임 관련 책은 몇 년전에 데모용으로 자바 게임을 만들어야 해서 급하게 읽었던 "게임&인터랙티브 애플리케이션을 위한 수학"과 "OpenGL로 배우는 컴퓨터 그래픽스"에 이은  3번째 책이다. 솔직히 말하면, 이전의 책들은 모두 중간까지 읽다 포기했다. -_-; 한 권은 수학의 이론적인 내용(수식)을 이해하는 것이 너무 어려웠고 -_-; 다른 한권은 특정 라이브러리에 집중하다보;
리뷰제목

게임 관련 책은 몇 년전에 데모용으로 자바 게임을 만들어야 해서 급하게 읽었던 "게임&인터랙티브 애플리케이션을 위한 수학"과 "OpenGL로 배우는 컴퓨터 그래픽스"에 이은  3번째 책이다. 솔직히 말하면, 이전의 책들은 모두 중간까지 읽다 포기했다. -_-; 한 권은 수학의 이론적인 내용(수식)을 이해하는 것이 너무 어려웠고 -_-; 다른 한권은 특정 라이브러리에 집중하다보니 라이브러리 설명 외에 이론적인 내용과의 불균형과 더불어 프로젝트 진행에 따른 시간이 부족했기 때문이다.  

 

 

세 번째로 도전하게 되는 이번 책은 제목 자체에서 "게임"과 "수학"이라는 두 주제를 다를 것임을 알게 해준다.  이 책에서 담아내는 내용은 게임 개발자가 알아야 하는 필수적인 내용이다. 앞부분에 있는 로드맵을 보면 관련 분야의 오랜 경험에서 오는 필수적인  내용만 잘 추려서 정리한 것임을 알 수 있다. 이런 수학적인 내용에 대한 설명이 잘 되어 있어 아마도 많은 사람들이 책을 보면서 "생각보단 어렵지 않은데"하고 느낄 수 있을 것 같다. (적어도 5장까지는 그랬다 ^^:) 그리고, 내용이 점차적으로 어려워지긴 하지만 앞의 내용을 잘 이해하고 따라간다면 이전처럼 중간에 포기하지 않을 것 같다. (단, 수학과 담을 쌓은지 오래되었다면 어쩌면 '수학의 정석'이나 '해법 수학'이 필요할지도 모르겠다 -_-;)

 

 

벡터, 삼각함수, 행렬에서 부터 아핀 번화, 벡터 내적, 복소수 등 이런 내용을 안다고 해도 이를 코드로 만들어 내는 것은 또 다른 이야기다. 따라서, 예제로 나오는 코드를 잘 살펴보고 이를 설명하는 내용과 연결시킨다면 수학적인 내용 뿐 아니라 이를 구현하는 훌륭한 레퍼런스 갖게 될 것 같다. (책에 앞부분에 설명해 두었지만 코드 컴파일을 위한 환경 설정도 그리 어렵지 않다) 더불어, 한 아쉬운 점은  책의 예제는 코드까지 설명이 되어 있어 읽을 때는 실제로 알고 있다고 생각해도 잘 모르는 경우가 종종 있기 때문에 각 챕터마다 조금 도전적인 문제를 한 두개 넣어서 배운 내용을 확인할 수 있었으면 학습 효과가 더 좋아졌을 것 같기도 하다.

 

개인적으로, 게임 개발에 관심이 있는 개발자라면 어런 책은 한 번쯤 정독해 보는 것이 좋을 것 같다. 이 책은 어찌보면  화려한 기법이나 고급 기술보다는 기본 체력과 맺집을 길러주는 책이므로 바로 효과는 없어도 두고 두고 도움이 될 것이기 때문이다. 

3명이 이 리뷰를 추천합니다. 공감 3 댓글 0
구매 이득우의 게임 수학 내용 평점5점   편집/디자인 평점5점 m****9 | 2023.01.08 | 추천1 | 댓글0 리뷰제목
좋은책입니다.   행렬, 삼각함수, 벡터만으로 3D 렌더링을 구현할 수 있다는 점이 참 흥미로웠습니다. 책의 난이도는 사원수 부분만 빼면 고1정도 수학 지식으로 읽을 수 있다고 생각합니다. 덕분에 저도 수학을 손놓은지 수십년이 지났지만 재밌게 읽을 수 있었습니다.   이 책을 읽으면서, 만약 제가 고등학생일때 이런책이 출판됐더라면 얼마나 좋았을까;
리뷰제목

좋은책입니다.

 

행렬, 삼각함수, 벡터만으로 3D 렌더링을 구현할 수 있다는 점이 참 흥미로웠습니다. 책의 난이도는 사원수 부분만 빼면 고1정도 수학 지식으로 읽을 수 있다고 생각합니다. 덕분에 저도 수학을 손놓은지 수십년이 지났지만 재밌게 읽을 수 있었습니다.

 

이 책을 읽으면서, 만약 제가 고등학생일때 이런책이 출판됐더라면 얼마나 좋았을까라는 생각을 하게됐습니다. 그러면 좀더 많은 도전을 해볼수 있었을텐데라구요. 아무튼 이런 책이 늦게라도 출판돼서 참 다행이라는 생각이 들었고, 개발자를 꿈꾸는 고등학생이라면 꼭 읽어보길 권하고 싶다는 생각도 들었습니다. 좋은책이에요.

 

게임 개발자가 아니더라도 교양서적처럼 읽어보시길 권합니다. 저또한 게임개발자가 아니고 3D 모델러이지만 정말 많은 도움이 됐습니다. 

 

좋은 책 출판해주셔서 다시한번 감사드립니다.

1명이 이 리뷰를 추천합니다. 공감 1 댓글 0

한줄평 (9건) 한줄평 총점 9.2

혜택 및 유의사항 ?
평점4점
게임에 쓰는 수학이 21세기에 바뀐게 아니니.. 근데 요즘 메타버스에 버스타는 메타가 많네
3명이 이 한줄평을 추천합니다. 공감 3
| 2022.02.18
구매 평점5점
상당히 원론적이고 기초적인 내용에 충실합니다. 앞으로는 이런 책이 많아지길 바랍니다.
1명이 이 한줄평을 추천합니다. 공감 1
w******5 | 2022.05.28
구매 평점4점
자체 엔진 제작에 관한 책의 출판이 다시 활기를 찾기를 바라며 이 책을 구매했습니다.
1명이 이 한줄평을 추천합니다. 공감 1
YES마니아 : 플래티넘 k*****9 | 2022.03.25
  •  쿠폰은 결제 시 적용해 주세요.
1   40,500
뒤로 앞으로 맨위로 공유하기