메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

유니티로 배우는 게임 수학

기초 개념부터 모바일까지, 게임 개발에 필요한 수학 원리 설명서

한빛미디어

번역서

절판

  • 저자 : 구부키 류이치
  • 번역 : 김성재
  • 출간 : 2016-08-01
  • 페이지 : 368 쪽
  • ISBN : 9788968485008
  • eISBN : 9788968483059
  • 물류코드 :2500
  • 초급 초중급 중급 중고급 고급
1 2 3 4 5
4.7점 (3명)
좋아요 : 112

책소개

이론과 실무를 접목한 게임 프로그래머 최고의 수학 학습서! 

 

게임을 개발하며 수학을 독학한 소프트웨어 엔지니어가 현업에서의 시행착오 경험을 바탕으로 현장에서의 수요를 염두에 두고 현실적으로 구성했다. 현업에 필요한 지식을 빠르게 습득할 수 있도록 게임 개발자가 알아야 할 수학 지식만을 담아 실무용 생존 지침서로 적합하다. 먼저 수학 개념을 살펴보고, 이어서 유니티 예제를 실행해 눈으로 그 원리를 직접 확인할 수 있어 수포자도 확실하게 수학을 배울 수 있다.

 

 

<유니티로 배우는 게임 수학>의 샘플은 버전 5.3용으로, 5.2.4와 5.3.4에서도 문제 없이 실행됩니다.

 

5.3.5 이후 버전, 또는 구버전인 5.2.x 이전 버전의 경우,

저자가 깃헙에서 제공하는 다음 URL을 참고하여 본인에게 맞는 버전의 샘플을 내려받아 진행하세요.

▶ https://github.com/ryukbk/mobile_game_math_unity 

 

참고로, 다음 내용은 유니티 정책 변경에 대한 저자의 공지입니다. 

본 번역서에서는 <3쇄> 이후부터 주석 처리로 해당 내용을 반영 예정입니다.

------------------------------------------------------------------------------------------

Unity 5.3.5 이상에서는 셰이더 프로그램의 모델 변환 행렬 _Object2World의 정의가 UnityCG.glslinc에서 폐기되어, 셰이더 프로그램 작성 시 새롭게 정의된 unity_ObjectToWorld를 사용하세요.(본 저장소의 샘플 코드는 _Object2World가 정의되어 있지 않으면 unity_ObjectToWorld을 사용하고 _Object2World를 별칭으로 정의하게 했습니다.)

 

Unity 5.5에서는 Mac용 그래픽 API로서 Player Settings 설정에서 OpenGLCore만 선택할 수  있고 OpenGL2가 폐기됐습니다. 따라서 Mac 용으로 GLSL 셰이더 프로그램을 동작시키려면 OpenGLCore가 지원하는 GLSL 1.30에 따라 작성해야합니다. GLSL 1.30에서는 varying 변수는 폐기되고, 대신 버텍스 셰이더에서 출력하는 변수는 out 지정해서 버텍스 셰이더 내에서 정의하고, 같은 이름의 변수를 in 지정해서 프래그먼트 셰이더 내에 정의해 프래그먼트 셰이더의 입력으로 합니다.

------------------------------------------------------------------------------------------

 

 

 

detail.jpg

 

저자소개

구부키 류이치 저자

구부키 류이치

모바일 게임 개발자. 도쿄대학 법학부를 졸업하고 2010년 GREE에 입사하여 게임스튜디오 엔지니어로 모바일 게임 개발에 매진해왔다. 대규모 웹 소셜 게임에서 iOS와 안드로이드용 유니티/Cocos2d-x 게임 애플리케이션에 이르기까지, 서버와 클라이언트 영역을 포함한 다양한 프로젝트에 종사한다. 

김성재 역자

김성재

기술 분야 전문 번역가. 관심 분야는 IT 기술과 일본어 교육 콘텐츠 등이다. 최근에는 업무에 필요한 맥 OS와 iOS 애플리케이션의 개발과 리뷰, 환경 구축에 관심이 있다. 번역서로는 『만들면서 배우는 기계 학습』, 『빅데이터의 충격』, 『C언어로 배우는 리눅스 프로그래밍』, 『구글 웹로그 분석』(이상 한빛미디어) 등이 있다.

 

목차

CHAPTER 1 삼각함수

__1.1 삼각형 

__1.2 직각삼각형 

__1.3 피타고라스의 정리  

__1.4 사인, 코사인, 탄젠트

__1.5 삼각함수의 주기성

____1.5.1 단위원

____1.5.2 코사인법칙

____1.5.3 주기성

____1.5.4 라디안

____1.5.5 덧셈정리

____1.5.6 사인파, 코사인파

__1.6 유니티 예제 : 클릭 위치를 향하는 캡슐・바인드하는 구체

____1.6.1 동작과 사양

____1.6.2 구현 코드

 

CHAPTER 2 좌표계

__2.1 직교좌표계 

____2.1.1 2D 좌표계

____2.1.2 3D 좌표계

____2.1.3 왼손 좌표계와 오른손 좌표계

____2.1.4 로컬 좌표계와 월드 좌표계

____2.1.5 Center/Pivot과 Local/Global 

____2.1.6 스크린 좌표

__2.2 극좌표계

____2.2.1 2D 극좌표계 

____2.2.2 3D 극좌표계 = 구면좌표계

__2.3 유니티 예제 : 3인칭 시점 카메라

____2.3.1 동작과 사양

____2.3.2 구현 코드

 

CHAPTER 3 벡터

__3.1 벡터의 정의

____3.1.1 수벡터

____3.1.2 기하벡터

____3.1.3 스칼라

__3.2 벡터 연산

____3.2.1 덧셈·뺄셈·교환법칙·결합법칙

____3.2.2 스칼라 곱셈·나눗셈

____3.2.3 단위벡터

____3.2.4 기저와 좌표계

____3.2.5 법선벡터

____3.2.6 크기

____3.2.7 내적

____3.2.8 벡터의 직교투영

____3.2.9 내적의 응용

____3.2.10 외적

____3.2.11 외적의 응용

__3.3 유니티 예제 : 간이 충돌 판정

____3.3.1 동작과 사양

____3.3.2 구현 코드

 

CHAPTER 4 행렬

__4.1 행렬의 정의

____4.1.1 정의

____4.1.2 행렬의 종류

__4.2 행렬의 연산

____4.2.1 행렬과 행렬의 연산 

____4.2.2 전치행렬

____4.2.3 역행렬

____4.2.4 행렬과 벡터의 곱셈 

____4.2.5 스위즐 연산119

____4.2.6 행우선과 열우선

____4.2.7 AoS와 SoA

____4.2.8 행렬식

____4.2.9 직교행렬

__4.3 유니티 예제 : 행렬 계산을 위한 Inspector 확장

____4.3.1 유니티 에디터의 확장 기능

____4.3.2 동작과 사양130

____4.3.3 구현 코드

 

CHAPTER 5 좌표 변환

__5.1 좌표 변환이란 무엇인가

__5.2 지오메트리 파이프라인

____5.2.1 모델 변환

____5.2.2 뷰 변환 

____5.2.3 프로젝션 변환

__5.3 동차좌표계

____5.3.1 동차좌표계란 무엇인가

____5.3.2 동차좌표계와 사영기하학

____5.3.3 유니티의 동차좌표계

__5.4 변환 종류

____5.4.1 선형 변환

____5.4.2 아핀 변환

____5.4.3 리지드바디 변환

____5.4.4 투영 변환

__5.5 좌표 변환의 행렬 표현

____5.5.1 평행이동

____5.5.2 회전

____5.5.3 스케일

____5.5.4 모델 변환

____5.5.5 기저 변환

____5.5.6 뷰 변환

____5.5.7 원근투영 변환

____5.5.8 직교투영 변환

____5.5.9 등각투영 변환

__5.6 유니티 예제 : 행렬에 의한 아핀 변환과 프로젝션 변환

____5.6.1 동작과 사양

____5.6.2 구현 코드

 

CHAPTER 6 사원수

__6.1 회전표현의 종류

____6.1.1 오일러각

____6.1.2 로드리게스 회전 공식 

____6.1.3 짐벌락

____6.1.4 회전 행렬 문제

____6.1.5 사원수의 장점

__6.2 사원수의 정의 

____6.2.1 복소수

____6.2.2 이원수 

____6.2.3 사원수란 무엇인가

__6.3 사원수의 연산

____6.3.1 스칼라배

____6.3.2 공액

____6.3.3 크기

____6.3.4 곱셈

____6.3.5 단위 사원수

____6.3.6 내적

____6.3.7 역수

____6.3.8 행렬표현

__6.4 사원수를 이용한 3D 회전

____6.4.1 회전

____6.4.2 보간

__6.5 쌍대 사원수

____6.5.1 정의

____6.5.2 스키닝에 응용하기 

____6.5.3 연산

____6.5.4 리지드바디 변환

__6.6 유니티 예제 : 사원수를 이용한 회전

____6.6.1 동작과 사양

____6.6.2 구현 코드

 

CHAPTER 7 곡선

__7.1 곡선을 둘러싼 개념

____7.1.1 보간과 근사

____7.1.2 매개변수 함수

____7.1.3 다항식

____7.1.4 곡선과 스플라인

____7.1.5 연속성과 미분

____7.1.6 이원수를 이용한 자동미분

__7.2 곡선 알고리즘

____7.2.1 베지어 곡선

____7.2.2 캣멀롬 스플라인

____7.2.3 B 스플라인

__7.3 유니티 예제 : 세 종류의 곡선

____7.3.1 동작과 사양

____7.3.2 구현 코드

 

CHAPTER 8 게임 앱 환경

__8.1 게임 엔진으로서의 유니티

____8.1.1 씬 그래프

____8.1.2 컴포넌트 지향

____8.1.3 샌드박스

____8.1.4 게임 루프

____8.1.5 CPU와 병렬성

____8.1.6 GPU 프런트엔드

__8.2 스마트폰 아키텍처

____8.2.1 그래픽 드라이버

____8.2.2 드로 콜 배칭

____8.2.3 GPU 아키텍처의 변천

____8.2.4 저수준 그래픽 API

____8.2.5 헤테로지니어스 아키텍처

__8.3 그래픽 파이프라인

____8.3.1 OpenGL ES 2.0

____8.3.2 CPU의 드로 콜 생성

____8.3.3 버텍스 셰이더

____8.3.4 프리미티브 어셈블리

____8.3.5 래스터화

____8.3.6 프래그먼트 셰이더

____8.3.7 ROP 처리

____8.3.8 OpenGL ES 3.0 이후

____8.3.9 디퍼드 셰이딩

____8.3.10 테셀레이션 셰이더

____8.3.11 지오메트리 셰이더

____8.3.12 컴퓨트 셰이더

 

CHAPTER 9 셰이더

__9.1 유니티의 셰이더

____9.1.1 ShaderLab

____9.1.2 셰이딩 언어

____9.1.3 GLSL

____9.1.4 에디터 설정

____9.1.5 셰이더의 기본

____9.1.6 외부 도구와 WebGL

__9.2 조명

____9.2.1 확산반사

____9.2.2 램버시안 반사 모델

____9.2.3 하프 램버트 확산

____9.2.4 퐁 반사 모델

____9.2.5 정점 단위 조명

____9.2.6 픽셀 단위 조명

____9.2.7 림 라이팅

__9.3 텍스처 처리

____9.3.1 텍스처 매핑

____9.3.2 법선 매핑

__9.4 물리 기반 렌더링

____9.4.1 BRDF

____9.4.2 쿡토런스 경면 반사

 

부록 A_ 유니티의 물리엔진

부록 B_ 코드 동작 환경

 

출판사리뷰

기초 개념부터 모바일까지, 게임 개발에 필요한 수학 원리 설명서 

 

게임 개발에 필요한 수학 원리를 유니티를 실행해 눈으로 확인하는 실습형 지침서다. 한 개 장이 끝날 때마다 유니티로 만든 샘플 프로그램을 직접 돌려보고, 앞서 설명한 수식이 게임 그래픽에 어떻게 적용될지 직관적으로 이해할 수 있다. 

난해한 설명보다는 고등학교 수준의 수학 원리를 그림과 함께 차근차근 소개하는 것에 중점을 두었다. 수학을 싫어하는 사람도 쉽게 접근할 수 있도록 풀컬러로 풍부한 삽화와 스크린샷을 곁들였다.

수학의 기본 원리뿐 아니라 OpenGL ES 3.2의 3D 그래픽스 파이프라인, GPU 아키텍처, iOS/안드로이드 스마트폰 대상 최적화도 설명하므로 모바일 게임 개발자에게도 매우 유용하다. 이 책이 제공하는 지식은 게임 개발 자체의 토대가 되는 것으로, 반드시 유니티와 연계하지 않더라도 다방면으로 활용할 수 있다.

 

책의 주요 내용

  • 삼각함수 : 삼각형, 피타고라스의 정리, 사인, 코사인, 탄젠트, 삼각함수 주기성
  • 좌표계 : 데카르트 좌표계, 극좌표계
  • 벡터 : 벡터 정의, 벡터 연산
  • 행렬 : 행렬 정의, 행렬 연산
  • 좌표 변환 : 개념 정의, 지오메트리 파이프라인, 동차좌표계, 행렬 표현
  • 사원수 : 사원수 정의, 연산, 3D 회전, 쌍대 사원수
  • 곡선 : 곡선을 둘러싼 개념, 곡선 알고리즘
  • 게임 앱 환경 : 게임 엔진으로서의 유니티, 스마트폰 아키텍처, 그래픽스 파이프라인
  • 셰이더 : 유니티의 셰이더, 조명, 텍스처 처리, 물리 기반 렌더링

 

독자리뷰

오탈자 보기

부록/예제소스

부록/예제소스
자료명 등록일 다운로드
DOWNLOAD 5.3.5 이후 버전 or 구버전 5.2.x 예제소스 2020-01-29 다운로드
DOWNLOAD 예제소스 2020-01-29 다운로드
결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원 무료배송
닫기

리뷰쓰기

닫기
* 상품명 :
유니티로 배우는 게임 수학
* 제목 :
* 별점평가
1 2 3 4 5
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
유니티로 배우는 게임 수학
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
유니티로 배우는 게임 수학
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?