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

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

소문난 명강의 : 레트로의 유니티 게임 프로그래밍 에센스(개정판)

C#으로 배우는 입문부터 4가지 게임 제작까지(Unity 2021/2022 호환, 부록: 어드레서블 시스템, 2022 버전 호환 가이드 별도 제공)

한빛미디어

집필서

판매중

4.9점 (45명)
좋아요 : 12




독자분들로부터 수많은 찬사를 받았던 유니티 대표 도서 『소문난 명강의:레트로의 유니티 게임 프로그래밍 에센스』가 개정판으로 돌아왔습니다!

 

이 책은 기본을 빠르게 익히고 나서 게임을 직접 만들며 필요한 기능을 알아가는 입문 + 활용서로서 여러분의 시간을 아껴줍니다. C#을 몰라도, 유니티 엔진을 몰라도 게임을 만들 수 있습니다. C# 입문 + 유니티 에디터 + 실전 게임 개발을 한 권으로 전달하니까요. 또한 아주 낮은 눈높이로 설명하고 차츰차츰 높은 난도의 게임을 완성해나가기 때문에 초보자가 책을 완독하는 데 무리가 없습니다.

 

이 책에서 제공하는 4가지 게임을 만들다 보면 유니티로 게임을 개발하는 데 필요한 실무 능력을 제대로 갖추게 될 겁니다.

 

 

개정판에서 추가된 내용

  • 유니티 2021에 맞춰 내용을 갱신했습니다.
  • 스크립터블 에셋에 관한 내용이 추가되었습니다.
  • 어드레서블 시스템을 별도의 부록으로 다룹니다.
  • 유니티 2022 호환을 위한 별도의 가이드를 제공합니다.

 

10514_detail.jpeg

 

 

이제민(레트로) 저자

이제민(레트로)

수천 명의 유료 온라인 수강생을 가진 게임 개발 트레이너입니다. 또한 유니티 코리아의 인증을 받아 유니티 마스터로 선정되었습니다. 해외 온라인 강의 플랫폼 유데미(Udemy)의 베스트셀러 유니티 강의 「retr0의 유니티 게임 프로그래밍 에센스」를 제작했습니다. 이는 현재까지 유데미에서 가장 평점과 판매량이 높은 한국어 강의입니다. 유튜브에 무료 게임 프로그래밍 교육 채널 retr0를 운영중입니다.

 

 

1부 유니티 준비하기


1장 유니티 준비하기 

__1.1 유니티 엔진은 무엇인가

__1.2 개발 환경 구성

__1.3 첫 프로젝트 생성하기

__1.4 마치며

 

2장 유니티 인터페이스 둘러보기 

__2.1 기존 프로젝트 열기

__2.2 레이아웃 변경하기

__2.3 메인 창

__2.4 씬 편집 툴

__2.5 게임 오브젝트 편집하기

__2.6 씬 기즈모

__2.7 씬 플레이 버튼

__2.8 유니티 클라우드 버튼

__2.9 마치며

 

3장 유니티 엔진이 동작하는 원리

__3.1 상속과 재사용

__3.2 컴포넌트 패턴 : 조립하는 게임 세상

__3.3 유니티 에디터에서의 컴포넌트

__3.4 메시지와 브로드캐스팅

__3.5 마치며

 

 

2부 C# 프로그래밍

 

4장 C# 프로그래밍 시작하기 

__4.1 변수 개념 잡기

__4.2 함수(메서드) 개념 잡기

__4.3 첫 스크립트 작성하기

__4.4 코딩 기본 규칙

__4.5 변수 연습하기

__4.6 메서드 연습하기

__4.7 제어문

__4.8 배열

__4.9 마치며

 

5장 게임 오브젝트 제어하기 

__5.1 클래스와 오브젝트

__5.2 C# 클래스 만들기

__5.3 참조 타입

__5.4 변수로 컴포넌트 사용하기

__5.5 마치며

 

 

3부 탄막 슈팅 게임 : 닷지 


6장 닷지 : 플레이어 제작 

__6.1 씬 구성하기

__6.2 카메라 설정하기

__6.3 플레이어 제작

__6.4 플레이어 스크립트 생성

__6.5 사용자 입력 감지

__6.6 플레이어 사망 처리

__6.7 PlayerController 스크립트 개선하기

__6.8 입력 매니저

__6.9 마치며

 

7장 닷지 : 탄알 제작 

__7.1 탄알 게임 오브젝트 준비

__7.2 탄알 스크립트 준비

__7.3 탄알의 충돌 처리

__7.4 탄알 생성기 준비

__7.5 탄알 생성기 스크립트 만들기

__7.6 마치며

 

8장 닷지 : 게임 매니저와 UI, 최종 완성 

__8.1 프로젝트 정리

__8.2 바닥 회전

__8.3 게임 UI 제작

__8.4 게임 매니저 제작

__8.5 빌드하기

__8.6 마치며

 

 

4부 공간

 

9장 방향, 크기, 회전 

__9.1 벡터 수학

__9.2 유니티 C# 벡터

__9.3 쿼터니언

__9.4 마치며

 

10장 공간과 움직임 

__10.1 유니티 공간

__10.2 오브젝트의 이동과 회전

__10.3 벡터 연산으로 평행이동 구현하기

__10.4 마치며

 

 

5부 2D 러너 게임 : 유니런 


11장 유니런 : 플레이어 제작 

__11.1 유니티 2D 프로젝트 열기

__11.2 시작 지점 만들기

__11.3 캐릭터 스프라이트 편집

__11.4 2D 캐릭터 게임 오브젝트 준비

__11.5 캐릭터 애니메이션 준비하기

__11.6 PlayerController 스크립트

__11.7 마치며


12장 유니런 : 배경 스크롤링과 게임 매니저 

__12.1 배경 추가하기

__12.2 움직이는 배경과 발판

__12.3 게임 UI 만들기

__12.4 게임 매니저 만들기

__12.5 마치며

 

13장 유니런 : 발판 반복 생성과 게임 완성 

__13.1 발판 만들기

__13.2 발판 생성기 만들기

__13.3 빌드하기

__13.4 마치며

 

 

6부 탑다운 슈터 게임 : 좀비 서바이버


14장 좀비 서바이버 : 레벨 아트와 플레이어 준비 

__14.1 프로젝트 구성

__14.2 레벨 아트와 라이팅 설정

__14.3 플레이어 캐릭터와 애니메이션 구성

__14.4 캐릭터 이동 구현

__14.5 시네머신 추적 카메라 구성하기

__14.6 마치며

 

15장 좀비 서바이버 : 총과 슈터 

__15.1 인터페이스

__15.2 총 게임 오브젝트 준비

__15.3 GunData 스크립트

__15.4 Gun 스크립트

__15.5 슈터 만들기

__15.6 마치며

 

16장 좀비 서바이버 : 생명과 좀비 AI 

__16.1 다형성

__16.2 LivingEntity 기반 클래스

__16.3 플레이어 체력 UI

__16.4 PlayerHealth 스크립트

__16.5 내비게이션 시스템과 좀비 준비

__16.6 Zombie 스크립트

__16.7 마치며

 

17장 좀비 서바이버 : 최종 완성과 포스트 프로세싱 

__17.1 HUD Canvas와 UI 매니저

__17.2 게임 매니저

__17.3 좀비 생성기

__17.4 아이템 생성

__17.5 포스트 프로세싱

__17.6 빌드하기

__17.7 마치며

 

 

7부 네트워크 협동 게임 : 좀비 서바이버 멀티플레이어 


18장 좀비 서바이버 멀티플레이어 : 네트워크 이론과 로비 구현

__18.1 네트워크 동기화

__18.2 게임 서버의 종류

__18.3 네트워크 권한 분리

__18.4 포톤 준비하기

__18.5 로비 만들기

__18.6 마치며

 

__19장 좀비 서바이버 멀티플레이어 : 네트워크 게임 월드 구현 

__19.1 네트워크 플레이어 캐릭터 준비

__19.2 네트워크용 플레이어 캐릭터 컴포넌트

__19.3 네트워크 Gun

__19.4 네트워크 좀비

__19.5 네트워크 아이템

__19.6 네트워크 게임 매니저

__19.7 적 생성기 포팅

__19.8 완성본 테스트

__19.9 마치며

__부록 A. 안드로이드 빌드

__부록 B. iOS 빌드

__부록 C. 어드레서블 시스템

[이 책의 특징]

 

① 입문자와 비전공자를 배려한 진행 순서

이 책은 유니티는 물론 프로그래밍에 대한 지식이 전혀 없는 입문자와 비전공자, 아티스트 등

을 대상으로 합니다. 따라서 비전공자가 쉽게 이해할 수 있는 순서로 구성되어 있습니다. 수학

적 내용은 전문적인 단어 대신 비전공자가 이해할 수 있도록 풀어 쓴 예시를 사용합니다.

 

② 수많은 예시와 그림

어려운 개념은 비유와 예시로, 복잡한 서술은 그림으로 대체했습니다. 700장 이상의 그림으로

실습 과정을 놓치지 않고 따라 할 수 있습니다.

 

③ 올인원 패키지

유니티의 동작 원리, C# 프로그래밍, 객체 지향, 선형대수, UI, 모바일, 후처리, 네트워크, 프

로그래밍은 물론 게임 개발에 필요한 모든 요소를 기초부터 고급까지 충실하게 다룹니다. 이

책 하나로 C# 프로그래밍 입문서와 게임 엔진 입문서를 모두 대체할 수 있습니다.

 

④ 깃허브를 사용한 꾸준한 호환성 관리

이 책의 모든 예제와 그림은 유니티 2021.2 버전으로 제작했습니다.

프로젝트의 코드는 특정 버전의 유니티 기능에 의존하지 않도록 구성했습니다. 따라서 유니티 2022.1 이후 버전에서도 예제가 호환됩니다. 향후 유니티 버전에서 호환성 문제가 발생하는 경우 깃허브 예제 폴더의 안내 문서에 해결 방법을 추가하겠습니다.

 

⑤ 4가지 게임 구현

독자가 다양한 종류의 게임을 만드는 방법을 접하도록 다음과 같이 총 4가지 게임을 구현합니다.

 

_ 탄막 슈팅 게임 - 닷지 (난이도 ★☆☆)

_ 2D 러너 게임 - 유니런 (난이도 ★★☆)

_ 탑 다운 슈터 게임 - 좀비 서바이버 (난이도 ★★★)

_ 네트워크 협동 게임 - 좀비 서바이버 멀티플레이어 (난이도 ★★★)

 

 

[이 책에서 다루는 범위]

 

① 유니티 에디터

_ 유니티 엔진의 원리를 다룹니다.

_ 유니티 허브와 유니티 에디터를 사용하는 대부분의 방법을 다룹니다.

_ 유니티 패키지 매니저를 사용합니다.

 

② C# 프로그래밍

_ 프로그래밍 입문에 필수적인 기초를 다룹니다.

_ 유니티 내부에서 사용하는 C# 문법 대부분을 다룹니다.

_ 필수적인 유니티 컴포넌트와 메서드 대부분을 배웁니다.

_ 객체 지향을 이해합니다.

 

③ 애니메이션

_ 유한 상태 머신을 이해하고, 원하는 2D/3D 애니메이션을 재생하는 방법을 배웁니다.

_ 애니메이션 블렌딩, IK를 사용해 기존 애니메이션 클립을 변형하는 방법을 배웁니다.

_ 2D 애니메이션을 직접 만듭니다.

 

④ 벡터 수학

_ 공간과 위치, 방향을 표현하는 데 필요한 수학적 지식을 배웁니다.

_ 쿼터니언을 사용하는 방법을 배웁니다.

 

⑤ 유니티 UI(UGUI)

_ UGUI를 이해하고 사용하여 게임 UI를 만듭니다.

_ UI 레이아웃을 구성하는 방법을 이해합니다.

 

⑥ 아트

_ 머티리얼, 라이팅, 글로벌 일루미네이션 등을 이해합니다.

_ 후처리 효과를 이용해 게임 화면에 아름다운 영상미를 주는 방법을 배웁니다.

 

⑦ 디자인 패턴

_ 기초적인 디자인 패턴을 배웁니다.

_ 이벤트 주도 방식을 이해하고 사용합니다.

 

⑧ 네트워크

_ 서버, 로컬, 동기화 등 네트워크 게임 개발에 필요한 개념을 이해합니다.

_ 포톤을 사용하여 멀티플레이어 게임을 만듭니다.

 

⑨ 그외

_ 시네머신으로 카메라 자동 추적을 구현합니다.

_ 게임 속 AI를 구현합니다.

_ 안드로이드, iOS 모바일 빌드 방법을 배웁니다.

_ 스크립터블 오브젝트를 사용합니다.

_ 어드레서블 에셋 시스템을 배웁니다.

 

 

추천사

 

“유니티에 매력을 느끼고, 게임 프로그래밍을 이해하고 자신만의 게임을 개발하고 싶은 사람에게 꼭 추천합니다. 단순한 따라 하기가 아니라 코드의 모든 부분을 이해하고 온전히 내 것으로 만들고 싶은 사람에게 꼭 추천합니다. 게다가 비전공자를 위해 쓰인 만큼, 프로그래머와 협력해야 하는 다른 직군의 게임 개발자에게도 추천할 만한 책입니다.”

_오지현 / 유니티 코리아, 리드 에반젤리스트

 

“책 끝에 언급했듯이 피카소는 ‘위대한 예술가는 훔친다’고 했습니다. 여러분은 이 책에서 훔칠 가치가 있는 많은 것을 찾을 겁니다. 그러니 레오나르도 다빈치와 같이 창작자의 숲에서 우뚝 선 나무를 꿈꾼다면 이 책이 그 위대한 씨앗을 안겨줄 겁니다.”

_서덕영 / 경희대학교 소프트웨어융합대학, 게임 트랙 교수

 

“코드나 유니티 엔진에서 각 기능을 단순하게 따라 하는 것에 그치지 않고 각각의 역할이 왜 필

요한지, 어떻게 작동하는지 세세하게 설명한 부분을 하나하나 읽고 따라 하다 보면 자연스럽게

게임 제작에 필요한 지식을 쌓을 수 있습니다. 어렵지 않게 쓰여진 책의 내용은 비전공자라 할지라도 게임 제작에 꼭 알아야 하는 기본 사항을 매우 친절하게 배울 수 있게 만들어줍니다.”

_이상윤 / 유니티 코리아, Senior Advocate/Technical Artist

 

“이 책은 처음 유니티를 시작하는 사람들에게 유니티 엔진의 기본 기능부터 게임을 만들기 위해

필요한 기초 지식까지 알기 쉽고 명료하게 전달합니다. 그리고 배운 지식을 이용하여 실제 사

례를 들어가며 설명하여 게임 개발 과정을 누구나 쉽게 따라 할 수 있게끔 구성되어 있습니다.

특히 놀라운 부분은 배우지 않은 개념이 갑자기 나오거나 난이도가 툭 튀어오르는 부분이 없다

는 것입니다. 프로그래밍에 대한 기본 지식을 예제를 설명하는 중간 중간에 잘 배치한 것도 개

인적으로 좋았던 부분입니다.”

_박동민 / 마둠파 테크니컬 아트 연구소, 소장

1.jpeg

 

 

레트로의 유니티 게임 프로그래밍 에센스의 개정판이다.

 

이 책은 유명해서 아마 관심 있는 사람이나 관련 업무를 하는 분들은 이미 알고 있을지도 모르겠다.

 

저자는 유튜브도 운영하는데 보다보면 저자의 열정과 노력이 느껴진다. 이 책에 그런 열정이 고스란히 녹여져 있다. 개정판까지 나오는 것도 저자의 부단히 노력했다는 증거이기도 하고 이 책이 인기가 많다는 증거이다. 인기가 많다는 것은 역시 좋은 책이고 많은 독자들이 도움을 받았다는 의미이기도 하다.

 

 

특히 이 책은 초심자를 배려하기 위해 쉽게 자세히 설명하는 것이 좋다. 위와 같이 간단한 기본기부터 차근차근 다룬다. 그리고 그림을 이용해서 이해를 돕기 위해 노력한다. 코드에 화살표로 저렇게 설명을 넣는 것도 그 중 하나이다. 아무것도 아닌거 같아도 저렇게 이미지를 배치하는 것도 저자의 입장에서는 노력이다. 그리고 독자는 활자로만 되어 있는 것 보다 이해하는데 큰 도움이 된다.

 

 

개념에 대한 설명도 그림으로 잘 설명하고 있고 툴에 대한 설명도 그림과 화살표로 차근차근 스텝별로 알려준다. 이런게 정말 초보자들에게 너무 유용하다. 그대로 따라하기에 쉽기 때문이다. 어느정도 익숙한 사람이라면 불필요하게 느껴질지도 모르는 부분이지만 초심자는 다르다. 이런 배려가 이 책의 큰 장점이다.

 

최종적으로 샘플 게임도 만들면서 프로젝트도 진행하는 식으로 초심자가 입문하여 작은 프로젝트까지 완성해볼 수 있는 아주 좋은 유니티 입문서이다. 유니티에 관심이 있다면 추천한다!

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."의 개정판이다.

 

이 책은 유명해서 아마 관심 있는 사람이나 관련 업무를 하는 분들은 이미 알고 있을지도 모르겠다.

 

저자는 유튜브도 운영하는데 보다보면 저자의 열정과 노력이 느껴진다. 이 책에 그런 열정이 고스란히 녹여져 있다. 개정판까지 나오는 것도 저자의 부단히 노력했다는 증거이기도 하고 이 책이 인기가 많다는 증거이다. 인기가 많다는 것은 역시 좋은 책이고 많은 독자들이 도움을 받았다는 의미이기도 하다.

 

 

특히 이 책은 초심자를 배려하기 위해 쉽게 자세히 설명하는 것이 좋다. 위와 같이 간단한 기본기부터 차근차근 다룬다. 그리고 그림을 이용해서 이해를 돕기 위해 노력한다. 코드에 화살표로 저렇게 설명을 넣는 것도 그 중 하나이다. 아무것도 아닌거 같아도 저렇게 이미지를 배치하는 것도 저자의 입장에서는 노력이다. 그리고 독자는 활자로만 되어 있는 것 보다 이해하는데 큰 도움이 된다.

 

 

개념에 대한 설명도 그림으로 잘 설명하고 있고 툴에 대한 설명도 그림과 화살표로 차근차근 스텝별로 알려준다. 이런게 정말 초보자들에게 너무 유용하다. 그대로 따라하기에 쉽기 때문이다. 어느정도 익숙한 사람이라면 불필요하게 느껴질지도 모르는 부분이지만 초심자는 다르다. 이런 배려가 이 책의 큰 장점이다.

 

최종적으로 샘플 게임도 만들면서 프로젝트도 진행하는 식으로 초심자가 입문하여 작은 프로젝트까지 완성해볼 수 있는 아주 좋은 유니티 입문서이다. 유니티에 관심이 있다면 추천한다!

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."



게임을 만드는것은 '전문가'의 영역이라고만 생각해왔는데


어느새 점점 우리도 할 수 있게 되었다.


대표적으로 '게임을 만드는 게임'인


넥슨사의 프로젝트 MOD가 있다.

 

MOD 얘기를 하려는것은 아니고, 이 책을 읽고 난 소감을 한줄로 이야기 하면



게임 제작을 장벽을 낮춘 All-In-One 기초 書


레트로의 유니티 게임 프로그래밍 에선스


저자의 글을 읽다보면 아래와 같은 장점이 있다.



1)비전공자와 입문자를 배려하여 글을 작성하였다. 특히 벡터쪽에서 수학적이야기가 많이 나오는데 전문적인 단어 대신 비전공자가 이해할 수 있도록 풀어 써 주었다.



2)예시가 정말 많다.


직관적으로 이해가 어려운 부분은 그림-비유 등으로 설명을 해주신다.


사진이 700장넘게 실려 있기 때문에 초보자라도 누구나 따라 올 수 있다.



3)★가장 큰 장점 : 올패키지이다.


유니티부터


C#


UI


네트워크


기초부터 고급까지 모든 내용을 충실하게 다루었다.



단점을 뽑자면 아래와 같다



장점의 3)과 연결되는 내용인데



모든 내용을 다루다보니 1000페이지가 넘는다.


또한 이어지는 내용이 많아서 스킵하면서 보는걸 추천하지 않는다.



객체지향, 선형대수, 프로그래밍등의 개념은 쉽게 설명해주고 사진과 비유가 들어가 있지만


배경지식에 따라 어렵게 느껴질 수 있다.

 

 

KakaoTalk_20220725_030238217.jpg

 

 


이 책에서는


1)탄막게임 닷지


2)2D 러너 게임 유니런


3)탑 다운 좀비 서바이버


4)네트워크 게임 좀비 서바이버 멀티플레이어


를 만드는데



 

21.jpg

 

 

만들면서 느낀건


UI는 물론이고, 충돌처리, 영상처리, 네트워크 ㄱ임 제작, 2D 게임 제작, 키보드 조작 등을 배울 수 있다.


유니티 개발은 무료이기에 혼자서도 게임을 만들어보기로 마음 먹었다면 가장 적합한 엔진이다.



유니티를 처음 배우거나


언리얼-유니티 중 어떤걸 먼저 배우는게 고민이라면


해당 책을 강력 추천해주고 싶다!



언리얼적 지식이 필요하다 하더라도, 이 책에서 배우는 배경지식은 당신이 어떤 엔진을 쓰든 좋은 밑 거름이 될 것이라 확신한다. 엄청나게 배경 지식을 넓혀주는 책이다!





"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 



레트로의 유니티 게임 프로그래밍 에센스 1.jpg

 

[서평] 레트로의 유니티 게임 프로그래밍 에센스 [이제민 저 / 한빛미디어]

 

게임을 해보기만 했지 게임을 만들어본 적도 없거니와 게임이 어떻게 구동되는지 생각조차 해본 적이 없었는데, 이번에 한빛미디어에서 게임 프로그래밍에 대한 책을 읽어볼 기회가 생겨 그저 단순한 호기심에 선택하여 보았다. 

 

이 책의 저자 이제민은 수천 명의 수강생을 가진 게임 개발 트레이너로 유니티 코리아의 인증을 받아 유니티 마스터로 선정되었다. 해외 온라인 강의 플랫폼 유데미의 베스트셀러 유니티 강의 'RETR0의 유니티 게임 프로그래밍 에센스'를 제작하였고, 이는 현재까지 유데미에서 가장 평점과 판매량이 높은 한국어 강의이다. 현재 유튜브에 무료 게임 프로그래밍 교육 채널 'RETR0'를 운영중이다.

 

1.jpg

2.jpg

 

 

 

이 책은 엄청난 두께의 책 두 권이 세트로 구성되어 있었는데, 유니티 엔진은 무엇인가, 개발 환경 구성부터 유니티 인터페이스를 둘러보고, C# 프로그래밍, 탄막 슈팅 게임 닷지, 방향과 크기, 회전, 공간과 움직임, 2D 러너 게임 유니런의 플레이어 제작, 배경 스크롤링과 게임 매니저, 게임 완성, 탑다운 슈터 게임 좀비 서바이버의 레벨 아트와 플레이어 준비, 총과 슈터, 생명과 좀비 AI, 최종 완성과 포스트 프로세싱, 네트워크 협동 게임 좀비 서바이버 멀티플레이어의 네트워크 이론과 로비 구현, 네트워크 게임 월드 구현 등을 다룬다.

 

프로그래밍의 P도 모르는 나로서는 역시 이해하기 힘든 전문 용어들과 수식들이 가득하였다. 이것을 보니 평소에 재미만 느끼며 하던 게임이 완성되어 시중에 나오기까지 얼마나 많은 노력이 필요한지 새삼 깨닫게 되었고, 게임을 개발한다는 것은 정말 대단하다는 생각이 들어 상당히 신기하기도 했고, 놀라웠다. 이 책은 게임 개발, 게임 프로그래밍에 관심이 있는 학생들은 차근차근 공부해보면 좋을 것 같다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

IMG_4749.JPG

 

 

스마트폰이 대중화 되면서 PC나 콘솔로 즐기던 게임을 스마트폰으로 쉽고 간편하게 즐길 수 있게 되었습니다.

그리하여 수많은 게임이 나오게 되었는데 그 게임들을 만들 수 있게 해준것이 유니티라고 생각됩니다.

이번에 한빛미디어에서 출간한 “레트로의 유니티 게임 프로그래밍 에센스 개정판"을 읽으면서 느꼈던 점을 적어보겠습니다.

우리가 생각하는 최종 목표는 자신이 생각하는 게임을 만드는 것일텐데요, 게임 제작에 대해 아무것도 모르는 상태라면 어떻게 시작해야할지 정말 막막할 것입니다. 어떤 것을 배우는데 있어 가장 좋은 방법이 따라 만드는 것인데 이 책을 통해 4가지 게임을 따라 만드면서 게임 제작에 필요한 기법들을 학습할 수 있습니다.

최신 유니티 개발환경 셋팅 법과 인터페이스 설명이 정말 친절하게 설명되어 있습니다. 유니티는 특히 에디터의 사용법이 어려울 수 있는데 각 툴의 설명을 스크린샷과 함께 간결하게 설명해줍니다. 그리고 유니티 엔진의 원리를 쉬운 예제들을 통해 학습할 수 있게 하여 동작 원리와 함께 게임 게획에 대해서도 학습할 수 있는 점이 좋았습니다 .

유니티는 C# 프로그래밍 언어를 사용합니다. C#을 모르고 있는 독자들을 위해 게임 개발에 필요한 프로그래밍 개념들을 초보자의 눈높이에 맞춰 설명해주고 있습니다.

게임에서 방향, 위치, 회전, 속력, 공간 등 수학적 지식도 필요한데 이러한 부분도 신경써서 책에 챕터를 할애해주었습니다.

실습으로 만드는 게임은 탄막슈팅게임, 2D 러너 게임, 탑다운 슈터 게임, 네트워크 협동 게임 이렇게 4가지 입니다. 플레이 자체는 간단한 게임이지만 그안에 들어가는 기법들은 초보자들에겐 넘기 어려운 산인데 차근차근 과정을 따라하면 게임이 만들어지게끔 정말 친절하게 정리되어 있습니다. 2D 게임에서 필요한 애니메이션 만드는 방법 이라든지 싱글턴 디자인 패턴도 배울 수 있고, 고급 기술이라 할 수 있는 네트워크를 활용한 게임을 만들어 볼 수 있기 때문에 이를 활용하여 자신만의 게임을 만들어볼 수 있을 것입니다.

책의 두께만큼 알찬 정보로 가득한 “레트로의 유니티 게임 프로그래밍 에센스 개정판"을 유니티 입문자들에게 강력 추천합니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”

 

 

[책] 레트로의 유니티 게임프로그래밍 에센스 (개정판)

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

오랜만에 게임 엔진 책을 읽었다.

코코스 2d를 만져본 이 후, 종종 유니티도 만져보고 싶다. 배우고 싶다는 생각을 듬성듬성 하던차였다.

그렇게 이런저런 이유로 미루어지던 마음과 열정을 이제야 행동으로 옮길 수 있었는데 

그에 있어서 이 책이 생각보다 많은 역할을 한 것 같다.

 

일단 책이 서술하는 흐름이 좋았다.

역시 게임을 만드는 게임툴을 설명하는 만큼 당장 유니티에 들어가있는 세세한 도구의 기능적인 설명을 냅다 설명하기보단

게임을 만들면서 유티니라는 도구를 서툴게나마 어떻게 사용하면 되는지 설명하고 있다.

그렇게 한스텝, 한스텝을 따라하면서 그때그때 필요한 지식에 대해 자세한 설명을 이어간다.

 

책을 읽고 이해하는데에 있어 부담스럽게 뇌속에 우겨넣을려는 느낌이 들지 않아서 좋았다.

그래서 훌렁훌렁 후딱후딱 읽을 수 있어서 좋았다.

 

그렇다면 과연 장점만 있을까

구성에서 취한 장점에서 단점도 같이 따라오는데 중요한 내용 및 개념을 다시 찾고자 할때는 

손이 많이 갈 수 있겠다 싶었다.

하지만 책을 읽는 중에 실제로 찾아보려고 한적은 사실 없었는데 

아무래도 입문자를 타겟으로 하다보니 내용도 많이 풀어서 설명되어있고

수학적으로 이해가 필요하고 난해한 개념은 실습과정에서 '이 책에서 다루는 범위를 넘어선다'며 칼같이 긋고 넘어간다.

이게 개인적으로는 매우 잘한 선택이라고 생각했다.

어설프게 이해하려다가 잘못알거나 혹은 흥미를 잃어버리는 것보다야

책이 가르키고자 하는 방향을 확실하게 알려주고 더 필요한것은 따로 더 공부해라는게 독자에게나 저자에게나 좋은 선택이다

 

이런 이유(다시 찾아보고자 할때의 어려움)에서 인지

다시 찾아보고자 할만한 주제인 시샵의 대략적인 문법과 벡터 수학에 대해 별도로 묶어내 설명해 놓았다.

여러모로 저자가 노련하게 책을 구성했다는 생각이 들었다.

 

 

 

 

 

IMG_2422.jpeg

 

컴퓨터] 레트로의 유니티 게임 프로그래밍 에센스 개정판

 

유니티 책은 있지만 먼가 조금씩 2% 부족한 느낌의 책들이라

먼가 좀 초보자들을 위한 기초부터 체계적인 그런 유니티 교재를 찾고 있었다.

그리고 딱 그런 책을 만났다! 

 

알이 꽉꽉찬 레트로의 유니티 게임 프로그래밍 에센스.

 

1_1.jpg

 

 

처음 받았을때의 당황스러움도 잠시과감히 겉표지를 뜯고 나니

1권의 벽돌같던 책이보기도 좋게 반반으로 나뉘었다.

1권은 기초적인 내용들을 담고 있어서 기초서로 보기 좋고

2권은 기초를 바탕으로 응용해서 활용해 볼 수 있는 내용들이 담겨 있다.

의도적으로 이렇게 나눠서 담은거 같다.

 

1권 ---------------------------------------

유니티를 처음 해보는 코딩을 처음해보는 사람들을 위한 책인 만큼 설치부터 자세하게 알려준다.

이 책은 이론을 쫙 풀고 실습들어가는게 아니라 직관적으로 봐가면서 만져보면서

이론을 함께 습득해가는 방식을 취하고 있어서

성격이 급하거나 빨리 먼가를 만들어보고 싶어하는 사람들에게 딱이다!(바로 저같은 사람^^;)

 

기본 화면 알려주면서도 간단하게 무슨 화면이다 하고 끝나는게 아니라

이렇게 바로 이해되도록 만져가면서 각각의 창들을 소개한다.

1_1_1.jpg

 

유니티 화면구성이 친숙해졌다면 이제 유니티도 코딩도 처음인 사람들을 위해C# 문법도 친절하게 알려준다.

이해를 돕는 그림들과 자세하면서도 쉽게 설명한다.

역시나 그림과 설명으로 개념이해되었으면바로 코드로 확인해주는 센스!

나는 이렇게 머리로 생각하고 생각한 것을 코드로 전개해주는이 과정이 이해하기 참 좋았다.

 

1_2.jpg

 

처음 코딩하는 사람들이 어려워하는 반복문도 이렇게나 스텝별 자세하게 알려준다.

보면 볼수록 친절한 책이라는 생각이 든다.

 

1_3.jpg

 

 

게임 개발을 위한 최소한의 코드 기초 문법을 살펴보았다면

 

이제 2부 5장부터 3부에서 유니티의 UI와

유니티의 기능들에 대해 좀 더 단계적으로 살펴본다.

만약 C#을 알고 있다면 2부 5장부터 살펴보면 된다.

4부에서는 유니티의 공간 개념 익히고

1권의 마지막 5부에서 앞서서 배운 기초들을 활용해

유니런을 만들어 본다.

앞에서 차근차근 기초를 닦아왔기에

컴알못, 유알못들도 5부 유니런 게임을 따라하며

흐름을 쫒아갈 수 있다.

2권 ---------------------------------------

1권에 비해 좀 더 내용이 묵직한 활용부분이지만

1권과 동일하게 상세샷과 단계별 상세 설명들로

초보자들이 따라하도록 독려해준다^^

게임에 빠질 수 없는 레벨별 디자인까지!!!!

딱 기초게임 개발에서 1권이 끝났다면

이젠 그걸 좀 더 응용해서 확장할 수 있게

2권에서 다듬어주신다.

또한 입문서나 기초서에서 빠지거나

먼가 다루기는 하는데 스쳐지나가는(?)

멀티플레이어까지 단계별로 다룬다.

컴알못, 유알못들을 위해 각 과정별 상세한 사진과

상세한 설명들이 있기에 따라할 수 있다.^^

유니티는 UGUI에서 처리되는 옵션들이 많아서

놓치면 코드를 다 따라쳐도 결과가 달라지는 경우가 있는데

이 책은 정말 상세샷들과 설명을

단계별로 다 정리해주셔서 따라하기 정말 좋았다.

 

1_4.jpg

 

이 책을 보며 저자의 팬이 된거 같다. ^^;

유니티 게임 하면 이제 레트로 이재민 저자가 생각날꺼 같다.


세상에서 최고로 잘 쓴 유니티 게임 개발 입문서란 

저자의 글에 쌍따봉 드립니다.


정말 그 말 그대로 유니티 게임을 다룬 입문서 중에서

기초부터 기초를 기반으로 응용해서 활용하는 입문서로는

최고 인거 같다. 


어설픈 유니티게임 관련 서적 2-3권보다

두 권 같은 이 책 한권이 훨씬 더 도움이 될꺼라고 

강력 추천할 수 있는 책이다.


유니티로 게임을 만들려고 하는

컴알못, 유알못에게 강력 추천하는

유니티 게임 개발의 등대같은 입문서!!!!!

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

한빛미디어 <나는 리뷰어다> 활동을 위해서 

책을 제공받아 작성된 서평입니다.

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

우선 나는 객체 지향 프로그래밍에 대해서 한두번 들여다 본 경험이 있다.C#과 유니티는 전혀 접해보지 않은 상태에서 이 책을 공부하게 되었다. 

유니티를 처음 사용해보는 사람들을 위해 어떻게 사용하는지를 안내하는 부분이 풍성하다. C#에 대한 설명을 하는 파트에서는 코드로 예시를 들어놓기보다는 설명으로 이해시키고 있는데, 코딩을 많이 접해보지 않은 사람이라면 이런 구성의 책이 어렵게 느껴지지 않아 좋을 것 같다. (물론 나도 좋았다.) C#의 문법에 대해 설명하기보다는 코드를 구성하는 요소, 예를 들면 변수, 함수(Method)등이 어떤 일을 해야하는지, 보통 프로그래밍 언어들이 공통적으로 가지는 문법, 만든 코드를 어떻게 프로젝트로 실행시키는지에 대한 설명이 나와있어 코딩을 처음하는 초보자를 대상으로 책을 지었음을 알 수 있다. 객체지향 언어를 사용할 때 필요한 개념들이 이어진 단원들에 나눠져서 설명이 되기 때문에 이 책의 프로젝트들을 따라가는데는 문제가 없지만 만일 C#이라는 언어에 대해 자세하게 이해하고 싶다거나, 왜 이런 패턴으로 프로그램을 만들어야하는지 알고 싶다면 해당 개념을 주로 다루는 책을 통해 더 공부해야할 것이다. 책에 있는 설명들은 이해가 가지만 막상 설명한 코드들을 모아서 한 프로젝트로 만드려고 하면 막막할 수 있는데 완성본을 깃헙에 제공하여서 완성본과 비교하면서 공부할 수 있어서 막막함을 덜 수 있다. 게임, 2D, 3D라고 하면 구현할 때 필요하(다고 생각되)는 개념들 때문에 접근하기 두려울 수 있다. 나또한 사실 이 책에서 가장 기대하는 부분이 게임을 처음 만들어보는 사람에게 고려해야하는 수학적 개념과 시각을 어떻게 이해시킬 것인가 였다. 공간에 대해 고려해야하는 만큼 벡터와 관련 연산에 대한 내용이 펼쳐진다. 고려하는 대상(초보자)을 잊지 않고 벡터의 개념부터 설명하고 있어 나도 오랜만에 보는 벡터를 상기할 수 있었다. 특히 개념을 설명만 하는 것이 아니라 이 연산을 나중에 어떤 상황에 사용할 것인지 살짝 언급해줘서 좋았다. 약간... 흐름을 잃지 않고 자극이 된달까..? 아~ 이런데 사용하기 때문에 지금 알아야 하는 구나~라는 생각이 들었다.  지은이의 말에서 저자가 언제나 더 나은 설명이 존재한다 라고 생각하며 책을 만들었다고 했는데 이 마음이 온전히 느껴지는 책이었다. 유니티를, 게임을 처음으로  만들어본다고 할지라도 의지만 있다면 이 책이 이끄는 대로 따라갈 수 있다. 책에 대한 느낌과는 별개로, 막연하게 게임을 만든다고 하면 어떤 틀부터 짜야할 지 상상이 안되고 어렵게만 느껴졌는데 이런 생각을 꺨 수 있어서 공부하는 동안 흥미로웠다. 이 책의 남은 부분을 공부하고, 조금 더 공부해보고 싶다는 마음이 들었다. 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

> 진행에 앞서

개인적으로 유니티툴도 많이 설치해보았으며, 유니티를 사용하는 업무와 연관성이 있는 업무를 수행하기도 하였다. 그래서 유니티 자체와 친밀감이 어느정도 있는 것은 사실이지만, 또 이것으로 무엇인가를 만들어 본 경험은 없기 때문에, 유니티는 전체적으로 어떤 구성요소가 있는지, 이것으로 얼마나 노력을 하면 게임을 만들 수 있을 것인지에 대한 감이 전혀 없다. 하지만 메타버스의 시대가 점점 발전해가면서 유니티 또한 더욱 발전하고 있는 이 시대에 조금 더 깊게 알았으면 좋겠다는 생각은 항상 하고 있었다. 즉, 관심은 항상 조금씩이라도 있었으나, 이것에 대한 구체적인 경험은 없어서 아쉬움이 있었다.

 

> 책에 대한 간단한 정보

이 책은 두꺼운 책이다. 그것이 인상적으로 다가왔다. 보통 책은 상자에 담겨 배송되지 않지만, 이 책은 상자에 담겨 배송된것을 보면 확실히 특출나기는 한 것이다.

개인적으로 마음에 드는 표지 스타일

그리고 깔끔하고, 핵심적인것을 잘 표현한 책 표지가 마음에 든다.


> 인상깊은 부분들

유니티로 개발해야하는 이유를 간단하게 표현한 그림이다.

이러한 로고들 모두 플랫폼을 의미하는 것이며, 이말은 즉, 유니티로 개발을 한다면, 이러한 플랫폼에서 작동하는 게임을 개발할 수 있다는 것이다. 그러니 개발할 가치가 충분하다는 말이다.

긴 말보다 한 장의 강력한 이미지라는 생각이 들어서 효과적인 이 화면을 강조하고 싶었다.


개발 실습하는 게임 중 하나

이 책 안에서는 게임을 총 3개(유형으로 보면 4가지)를 만들게 되는데, 그 중 처음 만들게 될 게임의 형태이다.

간단하게, 플레이어는 총알을 쏘는 기둥의 한가운데에 서 있는데, 그 기둥에서 발사되는 탄환을 잘 피하는 게임이다. 비행기 슈팅게임과 같은 느낌을 갖게 하는데, 중독성 있는 느낌이다. 이러한 게임을 만드는 데, 이 한장으로 바로 느낌이 올 수 있도록 잘 표현했다는 생각과 함께, 이 실습을 진행하면서 게임을 만들때 필요한 구성요소도 바로 와 닿게 만들었기에 인상적이라는 생각을 했다.


책의 뒷면

이 책 안에서 만드는 4가지 게임의 스크린샷이 인상적이다. 또한 개정판이기 때문에, 기존의 책과 다른 점을 바로 알 수 있다는 점에서 뒷판이 마음에 들었다.

유니티 2021에 맞춘 내용 설명, 스크립터블 애셋, 어드레서블 시스템 등에 대한 설명이 추가된 것을 강조하였다.


이 책의 두께를 한 눈에.

추가로 이 책의 두께를 보면 이러하다. 두께가 인상적이었다는 점을 조금이라도 공유하고 싶은 생각에 남겨보았다.


두께를 보완한 분권

단순히 이 책이 두껍기만 했다면, 무조건 좋다고 말하기는 어려웠을 것이다.

하지만, 이 책을 부담없이 만들어준 것이 바로 분권이다.

깔끔히 떨어지는 분권으로 인해 절반을 읽는것은 큰 부담이 없었다.


첫 번째 실습의 결과 유니티 에디터

그리고 이 책을 읽으면서 실습을 안 할수가 없었다.

실습을 수행한 결과 간단하게 이런 파일 구성이 되었다.

이 책에서 레이아웃 구성하는 방법까지 알려주기 때문에 편안하게 화면을 구성하여 개발이 가능하였다.


만든 게임을 플레이

만들었던 닷지게임이다.

네 개의 기둥에서 총알이 발사되며, 이 총알을 피하느라 돌아다니는 것도 힘든데, 화면마저 빙글빙글 돌아간다. 은근히 어렵지만 중독성있는 간단한 미니게임이다.

이 게임을 만드는데 시간이 그리 많이 들지는 않았다는 사실이 신기하였다. 이래보여도 3D게임인데 말이다.

딱, 게임을 만드는데 흥미를 유발한 좋은 프로젝트 예제라는 생각이 든다.


레트로라는 강사는 이미 온라인에서 유명한 유니티의 강사이다. 인프런, 유튜브 등에서 활동중인것으로 보인다. 그가 독자들을 위해 집필한 책이며, 온라인 강의로 이미 접한 사람들에게는 좋은 자료라고 생각이 든다. 다만 가격이 조금 비싼편에 속한다고 생각이 드는것은 사실이다. 그만큼 가치가 있기 때문에 그러한 특징을 잘 염두에 두는것이 좋을 것 같다.


> 괜찮은 부분

1. 유니티를 이용하여 게임을 만들면 전체적인 파일 구성이 머리에 남도록 하였다.

프로젝트 실습을 진행하면서 느낀 부분인데, 게임을 개발하면서, 하이어라키, 인스펙터, 프리팹, 스크립트, 매테리얼 등 이런 구성요소를 만들어야 한다는 사실, 각각을 어떻게 연결해야 한다는 것과 각 구성요소들이 상호작용하도록 하는 방법에 대해 알게 된것만으로도 에디터를 마주할 때 막연한 느낌을 제거해준다는 느낌이 들었다. 게임이라는 것은 실제로 기획에 대한 부분이 적지 않은 영역을 차지하지만, 미니게임을 만들때에는 그 기획으로 인한 두려움이 줄어들게 되므로, 개발 자체에만 집중할 수 있도록 도와주었다.


2. 책의 내용이 풍성하지만, 부담스럽지 않도록 노력하였다.

어쩌면 이 책의 단점이 되었을지도 모르는 책의 분량이 오히려 이 책은 장점으로 와 닿았다. 이론과 실습을 많이 담기 위해, 특히 실습을 제대로 담기위해 노력하다보니 책의 분량이 1000페이지가 넘게 되었다. 이것은 굳이 휴대하지 않더라도 책상위에 놓고 보기도 부담스러운 두께인 것은 사실이다. 하지만, 책을 분권할 수 있도록 하여 두께로 인한 부담을 줄였으며, 동시에 전체를 다 보기에도 목표설정이 부담스러울 수 있는데, 이 책의 절반만 보아도, 전체를 다 본듯한 착각에 들게 하기 때문에, 쉽게 목표설정을 하고 볼 수 있도록 했다고 생각한다. 이 점은 다른책에서는 쉽게 볼 수 없는 장점이라고 생각한다.


3. 단계별로 학습을 유도하는 느낌이 강하게 든다.

난이도 설정에 있어서 한 무리의 독자만을 바라보았다고 생각이 되지 않았다. 가장 쉬운것은  C# 언어에 대한 설명이 기초적인 부분부터 나온 것도 해당이 되지만, 게임을 만드는 실습에 있어서도 난이도가 그리 높지 않은 게임을 대상으로 시작되었기 때문이다. 하지만 그렇다고 그 수준으로 모든 챕터를 구성하지 않았다. 좀비 서바이벌이라는 게임을 통해 좀 더 깊이 있는 게임을 만들 수 있도록 유도하고 있으며, 그것을 협동 게임으로 만들 수 있는 구성요소까지 추가한 점이 인상적이었다. 이 모든것을 알고있는 유니티 현업 경력개발자라면 굳이 이 책이 필요할지는 모르겠지만, 그 외의 모든 관심있는 사람들에게는 조금씩 성장하며 읽을 수 있도록 도와준다. 그리고 중간부터 보아도 앞의 내용이 크게 영향을 주는 것은 아니기 때문에, 실력에 따라 꼭 처음부터 보지 않아도 문제가 되지 않는다. 이러한 구성으로 책이 재미있다는 생각마저 들게 만든다.

 

> 아쉬운 부분

1. 이론에 대한 부분은 필요성이 크게 와닿지 않았다.

이 책의 앞부분에 이론에 대한 부분이 존재한다. 사실 어느책이나 이론에 대한 부분은 존재하기 마련이고, 없으면 어려움이 있을 때 해결하기 어려우므로 필요하다고 생각을 한다. 하지만, 이론이 먼저 앞에 나와서인지, 실습을 접하기 전에는 이론에 대한 부분의 중요성을 알지 못했으며, 크게 각 내용에 대해서 와 닿지는 않았다. 그래서 중간에 나온 개념에 대해 설명을 할애한 챕터도 존재했는데, 그런 부분은 나름 의미가 있었으나, 특히 C#과 개발 기초에 대해 나온 부분은 차라리 첫번째 실습 이후에 나와도 좋지 않았을까 하는 생각도 들었다.


2. 윈도우(맥), 모바일(안드로이드, iOS) 의 플랫폼 외의 방법이 더 제공되었으면 좋았을 것 같다.

요즘은 멀티 플랫폼의 시대이다. 많은 곳에서 모바일 개발이 중요하기에 피씨 및 모바일 영역에서의 출력물을 중심으로 책이 집필되기 마련인데, 이 책도 그 범위를 벗어나지는 못했다고 생각한다. 일례로 유니티를 설치하면서, 개인적으로는 WebGL과 게임 콘솔 등에서 작동시키는 게임은 어떻게 만들 수 있는지 궁금했지만, 이 책에서는 해소할 수 없어서 아쉬웠다. 이것은 단점으로서가 아닌 단순히 아쉬운 점이기 때문에, 이러한 부분을 좀 더 알 수 있다면 좀 더 풍부한 정보를 전달하는 책이 되었을 것으로 생각된다.

 

> 추천 독자

- 유니티로 게임을 만들어보고 싶은 일반 개발자

- 유니티를 조금 할 줄 알지만, 실력을 키우고 싶은 개발자

 

> 개인적인 평점

- 가격: 6 / 10

- 내용: 10 / 10

- 디자인: 9 / 10

- 구성: 8 / 10

 

> 정보

저자: 이제민

출판사: 한빛미디어

가격: 60,000원

전체 페이지: 1,071페이지

 

** 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

1.jpg

현 시대는 회사 업무 및 일상 생활에서 노트북, 컴퓨터, 모바일 기기(휴대폰, 갤럭시 탭, 아이패드)등을 사용하여 보다 편리한 생활을 하고 있습니다. 그에 따라 많은 프로그램이 나오고 그 프로그램을 만드는 프로그래밍 및 프로그래머의 중요성이 많이 높아졌습니다. 과거 프로그래밍은 전문적으로 공부하지 않은 사람에게는 무척 접근이 어려운 분야였지만 시대가 변하고 툴이 좋아지는 개발 환경이 나오고 있어 프로그래머와 비프로그래머의 경계가 갈수록 모호해지고 있습니다. 많이 사용되는 프로그램들 중 상위권을 차지하는 것은 바로 게임입니다. 열심히 공부를 하거나 업무를 하고 나서 지쳤을 때 휴식을 취하면서 게임을 하는 시간은 그야말로 달콤한 꿀같은 시간이라고 다들 말하며 남녀노소 게임 싫어하는 사람은 거의 없다고 해도 무방합니다. 이번에 제가 리뷰할 도서는 유니티라는 게임 제작 프로그램을 이용하여 게임을 프로그래밍 하는 방법을 알려주는 도서입니다.

 

유니티란 3D 및 2D 비디오 게임의 개발 환경을 제공하는 게임 엔진이자, 윈도우, 맥OS, iOS, 안드로이드, 플레이스테이션, 엑스박스, 닌텐도 스위치, 웹브라우저(WebGL) 등 27개의 플랫폼에서 사용 가능한 3D 애니메이션과 건축 시각화, 가상현실(VR) 등 인터랙티브 콘텐츠 제작을 위한 통합 제작 도구입니다. 게임 개발에 사용하는 스크립트 언어는 C#와 자바스크립트(UnityScript)를 지원하며 도형으로 프로그래밍(유니티 볼트 (프로그래밍 언어))이 가능해 코딩이 능숙하지 않은 일반 개발자도 쉽게 코딩이 가능합니다.

 

제가 이 책을 선택한 이유는 이 책이 처음 유니티를 시작하는 사람은 물론 프로그래밍에 대한 지식이 전혀 없는 입문자와 비전공자, 아티스트들이 쉽게 이해할 수 있게 유니티 엔진의 기본 기능부터 게임을 만들기 위해 필요한 기초 지식까지 알기 쉽고  명료하게 전달하고 있고 실제 사례를 통해 설명하여 배운 지식을 이용해 게임 개발 과정을 쉽게 따라 할 수 있게끔 구성되어 있기 때문입니다. 이 중 수학적 내용은 전문적인 단어 대신 비전공자도 이해할 수 있도록 풀어 쓴 예시를 사용하고 있습니다. 특히 이 책에서는 배우지 않은 개념이 갑자기 나오거나 난이도가 툭 튀어오르는 부분 없이 일정한 난이도 상승을 유지하고 프로그래밍에 대한 기본 지식을 예제를 설명하는 중간 중간에 잘 배치 및 어려운 개념은 비유와 예시로, 복잡한서술은 그림으로 대체하여 실습하는 과정에 큰 어려움을 느끼지 않고 따라할 수 있어 끝까지 책을 정독할 수 있습니다.

 

이 책의 특성은 책 내용이 게임을 개발할 때 정말 중요하고 많이 사용하는 핵심 기능 위주로 구현되고 있고 각 구현을 특정 프로젝트에서만 사용되는 것이 아니라 어느 프로젝트를 하더라도 사용할 수 있도록 모든 부분의 내용들을 간결하면서도 자세하게, 정확하게 설명하고 있다는 점입니다.  또 장르별(탄막 슈팅 게임, 러너 게임, 슈터 게임, 멀티플레이어 게임 등)로 게임을 만드는 방법을 다루고 있으며 각 과정이 어떻게 맞물리고 각 기능을 왜 사용하는지 이유를 알려주어 수학, 코딩, 객체지향 등의 기본기를 놓치지 않고 쉽게 학습할 수 있기 때문에 실습예제가 아닌 자신만의 프로그램을 만들때 배운 지식들을 어느 요소에 어떻게 적용할지 다양한 방식으로 알려준다는 특징도 있습니다. 마지막으로 책 내용에 유니티의 동작 원리, C# 프로그래밍, 객체지향, 선형대수, UI, 모바일, 후처리,  네트워크, 프로그래밍은 물론 게임 개발에 필요한 모든 요소를 기초부터 고급까지 충실하게 다루고 있다는 장점도 있습니다.

 

구성

 

1부 유니티 준비하기

Chapter 1: 유니티 준비하기

Chapter 2: 유니티 인터페이스 둘러보기

Chapter 3: 유니티 엔진이 동작하는 원리

 

2부 C# 프로그래밍

Chapter 4: C# 프로그래밍 시작하기

Chapter 5: 게임 오브젝트 제어하기

 

3부 탄막 슈팅 게임: 닷지

Chapter 6: 닷지: 플레이어 제작

Chapter 7: 닷지: 탄알 제작

Chapter 8: 닷지: 게임 매니저와 UI, 최종 완성

 

4부 공간

Chapter 9: 방향, 크기, 회전

Chapter 10: 공간과 움직임

 

5부 2D 러너 게임 : 유니런

Chapter 11: 유니런: 플레이어 제작

Chapter 12: 유니런: 배경 스크롤링과 게임 매니저

Chapter 13: 유니런: 유니런: 발판 반복 생성과 게임 완성

 

6부 탑다운 슈터 게임: 좀비 서바이버

Chapter 14: 좀비 서바이버: 레벨 아트와 플레이어 준비

Chapter 15: 좀비 서바이버: 총과 슈터

Chapter 16: 좀비 서바이버: 생명과 좀비 AI

Chapter 17: 좀비 서바이버: 최종 완성과 포스트 프로세싱

 

7부 네트워크 협동 게임: 좀비 서바이버 멀티플레이어

Chapter 18: 좀비 서바이버 멀티플레이어: 네트워크 이론과 로비 구현

Chapter 19: 좀비 서바이버 멀티플레이어: 네트워크 게임 월드 구현

 

부록

부록 A: 안드로이드 빌드

부록 B: iOS빌드

부록 C: 어드레서블 시스템

 

파트별로 나누어 봤을때 1, 2부에서는 유니티와 코딩을 당장 이해하는 데 가장 필수적인 핵심에 대해 설명하고 있고, 3, 4, 5부에서는 장르별로 게임을 만드는 방법에 대해 기존 지식으로 해결할 수 없는 문제는 새로운 방법으로 하여 실습을 통해 이론을 이해하는 방식으로 설명하고 있고, 7부에서는 멀티플레이 게임 구현에 대해, 부록에서는 모바일 빌드에 대해 설명하고 있습니다.

 

 

개인적인 생각으로 학습은 프로그램 개발자로 취업을 희망하시거나 다른언어를 사용하여 취업한지 얼마 되시지 않는 이제 막 개발자로 시작한 초보자이신 분들께서는 C# 언어 관련 입문서를 먼저 학습하시고 난 뒤 1부부터 시작하시면 좋을 것 같고 어느정도 경험이 있으신 분들(프로그램 개발자 2년차~)부터는 2부까지는 쭉 보시면서 유니티의 개념과 C# 언어의 기본 구문 등에 대해 숙지한다는 방식으로 보시고 3부부터 학습하시는 것이 좋을것 같습니다.

 

 

개인적으로 약간의 단점이 어쩌면 욕심일수도 있는게 좀더 많은 실습 예제 및 비즈니스 케이스가 담겨있으면 더 좋았지 않았을까라는 아쉬움이 있습니다.

 

 

저의 리뷰를 읽어주셔서 감사합니다. 다음에는 좀더 유용하고 좋은 책으로 더 나은 리뷰를 통해 여러분께 책을 소개시켜드릴 수 있도록 더 노력하겠습니다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

오늘 리뷰할 도서는 [소문난 명강의 : 레트로의 유니티 게임 프로그래밍 에센스] 이다.
 
 
제목에 개정판이라고 되어 있는걸 보니 이전에 나온 구판은 2019년이고 인기가 많아서 개정판도 나온듯 하다.
 
 

표지 KakaoTalk_20220724_021731138_04.jpg

 

일단 천페이지가 넘는 어마어마한 분량, 아예 분권 처리 되어 나온 어마무시한 비주얼과 중량감이 압도적이다.
 
 

분권 KakaoTalk_20220724_021731138_01.jpg

 
사실 게임 개발 관련 내용도 낯설고, 유니티는 최근에 처음 사용해보았고, 쉽지 않은 툴이었다.
 
그 이유는 유니티가 기능과 메뉴가 엄청 많아서 튜토리얼을 보면서 따라하기도 쉽지 않을 정도였다.
 
이 책은 엄청 나게 많은 그림과 상세한 설명으로 분량을 채우고 있어서, 게다가 모두 컬러 !!!

나같은 어려움을 겪는 입문자들을 위한 좋은 사전 같은 책이라고 할 수 있다.

 

KakaoTalk_20220724_021731138_03.jpg

 


아마 저자가 독자들의 어려움을 익히 알고 집필한것으로 예상 된다.
 
책의 앞부분에는 C# 프로그래밍 초보자를 위한 내용과 객체 지향도 다루고 있어서 좋았다.
 
그리고 저자의 유튜브 채널(https://www.youtube.com/channel/UCRWq4MPqifkmT2GyL2d2ZAQ) 채널도
 
방문해보자. 게임 개발과 유니티에 대한 많은 영상으로 게임 개발에 도움이 된다.
 
유니티로 게임 개발에 대해 관심이 있거나 입문자라면 무조건 이 책을 보는걸 권장 한다.
 
다소 분량의 압박이 있기는 하지만, 그많큼 좋은 내용이 가득하다.
 
 
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

유니티.png

 

 

이 책에서는 프로그래밍을 모르는 초보자들도 쉽게 어려운 유니티 게임을 만들 수 있도록 친절하게 가르쳐주고 있으며, 각 장에서 배운 내용들도 요약하여 중요한 점들을 확실하게 짚고 넘어갈 수 있도록 하였다. 특히나 유니티를 처음 다루는 사람들은 툴 자체에 익숙하지 않아서 게임 오브젝트 하나를 제어하는데도 어려움을 겪을 수 있는데, 이 책에서는 화면 스크린샷을 통해 최대한 자세히 설명하기 때문에 초보자도 쉽게 내용 이해는 물론 일련의 진행과정들을 순조롭게 따라 갈 수 있게 하였다. 그리고 또한 프로그래밍을 처음 접하는 사람들은 빌드조차 어려워하는 경우가 많은데, 이 책에서는 유니티 게임을 빌드하는 방법도 단계 별로 나누고, 스크린샷에서 그 단계들을 표시함으로써 가독성을 높이고, 누구든지 쉽게 따라할 수 있도록 내용을 구성해놓았기에 유니티로 게임을 제작하려는 초보자들에게 큰 길잡이가 될 수 있을 것이다. 

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

유니티를 재밌게 배우고 싶다면 게임프로그래밍 에센스!

 

4가지 게임을 통해서 게임을 만드는 재미를 느낄 수 있습니다.

게임을 만드는 툴 중에 가장 배우기 쉬운 유니티 엔진을 활용해서 4가지 게임을 만들어보고 조금씩 자신의 입맛에 맞게 변형해 보면서 게임 프로그래밍에 재미를 느낄 수 있게 됩니다.

책의 두께는 두껍지만 내용은 알차게 잘 만들어져 있다고 생각했습니다. 디자인 패턴에 대해서도 다루고 있고,

4가지 게임이나 만들어 볼 수 있는 책이 흔하지 않다고 생각합니다. 앞으로도 이런 잘 만들어진 서적들이 많이 나왔으면 하는 바람입니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

게임을 제작할 때 다양한 엔진이 있습니다. 언리얼 엔진 뿐 만 아니라 유니티 엔진이 많이 알려져있는데요. 이 책은 유니티 프로그램과 C# 프로그래밍 툴을 활용하여 어떻게 게임을 만들고, 코딩에 포함된 알고리즘이 무엇이며 이를 활용하여 네트워크 기반의 게임까지 어떻게 구현할 수 있는 지에 대한 내용이 포함되어 있습니다.

 

책은 비전공자가 보더라도, 우선 900페이지를 넘는 책 두께에 겁먹지만 않으신다면, 이해하기 쉬운 내용들로 구성되어 있습니다. 처음에 유니티 설치부터 시작하여 라이선스를 어떻게 활성화하는지, 그리고 기본적인 2차원 및 3차원 움직임에 대하여 배우게 됩니다.

 

 

거기에 플레이어 오브젝트 등, 게임에 어떤 요소들이 포함되어 있고 이를 어떻게 하나씩 구현할 수 있을 지에 대하여 친절하게 적혀 있습니다. 기본 샘플 소스들을 가져와 실행하여 살펴보거나, 혹은 직접 하나씩 구현해보면서 어떤 내용으로 되어있는지 파악하며 이해하기 좋았습니다.

 

이에 그치지 않고 C#을 활용한 코딩도 나오는데, 알고리즘에 대한 기본 지식이 있다면 이해하기 매우 쉽고 그렇지 않더라도 기본적인 반복문이나 출력, 그리고 필수적으로 알아야 할 알고리즘들에 대해 알려주고 있습니다. 저는 파이썬이나 C 언어 등에 대해 이미 접해보았다니 해당 내용들을 크게 어렵지 않게 접할 수 있었고, 기본 지식이 없으시더라도 우선 시도해보신다면 이해하기 쉬울 것이란 생각이 들었습니다.

 

 

기본 시스템에 대해 구현하였다면, 이후 2D 탄막 게임, 3D 좀비 서바이벌 및 네트워크 환경 구축 등 실전 프로젝트들이 나옵니다. 이를 통하여 내 손으로도 직접 큰 규모의 게임을 만들고 이에 멀티플레이까지 지원할 수 있단 점이 매우 감동적으로 느껴질 것입니다.

 

유니티에 대하여 처음 접해보며 게임을 만들고 싶으신 분들, 그리고 C#을 활용한 프로그래밍에 관심이 있으시다면 입문서로도 매우 충실하지 않을까 생각됩니다. 앞서 말씀드린 것 처럼 매우 큰 분량이 부담스러울 수 있겠으나, 기간을 길게 접으면서 하나씩 해나가다보면 게임 구현을 어느덧 해내는 저를 발견할 수 있지 않을까 기대하고 있습니다. 올해가 가기 전에 저도 게임을 하나 만들어보고 싶단 생각이 들 정도입니닷

책에 나오는 4개의 게임을 직접 만들면서 유니티를 배울 수 있도록 만들어진 책이다.

유니티 좀 더 쉽게 접근할 수 있도록 실무형 과제를 중심을 유니티를 배울 수 있어서 좋은 것 같다.

요즘은 게임을 만들려면 게임엔진을 활용하는 것이 일반적이다. 그중에서도 양대산맥은 유니티와 언리얼이다. 특히 유니티는 유연한 라이선스 모델과 풍부한 리소스 덕분에 캐주얼 게임이나 인디게임 등에서 많이 채택하여 사용되고 있다.  하지만 유니티가 워낙 많은 기능을 제공하다 보니 초반에 유니티를 배워볼까 하는 사람들에게는 어떤 책을 선택할까도 또 하나의 고민거리가 되곤 한다. 지인을 통해 추천받았던 유니티 도서들 중 하나가 Retr0님의 유니티 에센스 책이었는데, 이번에 개정판이 나와서 한번 살펴보면서 그동안의 지식을 업데이트해보았다. 참고로 나는 게임 개발자는 아니다.

 

전과수준으로 두꺼운 유니티.. 에센스면 정수만 뽑은건데.. 

 

첫 느낌...두껍다.

1070쪽의 두꺼운 분량이다. 두께가 주는 첫인상을 무시할 수는 없다. "아... 이 정도를 봐야 유니티의 개념을 익힐 수 있단 말이지"하는 생각이 절로 든다. 다행히 500쪽 정도로 2권이 분철되어 있어서 그래도 가볍게 들고 다니면서 볼 수 있었다. 분철된 도서는 처음이었는데, 사용경험이 생각보다 괜찮았다. 앞으로도 두꺼운 책은 분철된 형태로 구매하게 될 것 같다. 회사 다니면서 이 책의 내용을 전부 해보면서 읽었는데 대략 2주 정도 소요되었다.

 

4가지 게임 만들기

이 책의 흐름은 4개의 게임을 만들어보면서 유니티를 익히는 것이다.  4개의 게임을 잘 선택했다고 본다. 첫 번째로 만드는 <닷지>를 통해 유니티 인터페이스와 기본적인 에셋을 추가하고 스크립트를 적용하면서 MonoBehaviour,에 대한 개념을 익힌다. Unity의 좌표 시스템을 통해  캐릭터를 움직이고, Collider를 적용하면서 캐릭터의 충돌 감지 개념을 익힌다. 이 모든 것을 컴포넌트 기반으로 쌓아 올려서 게임을 만들 수 있구나 하는 생각을 하면서 게임을 따라 만들어 보았다.

두 번째로 만드는 게임은 <유니런>이라는 2차원 플랫폼 게임이다. 닷지를 통해 기본적인 내용을 익힌 상태에서 애니메이션 클립과 유한 상태 머신을 이용하는 방법을 배울 수 있는 좋은 예제였다. 여기까지가 1권의 내용이다.

2권에서는 좀비 서바이버라는 탑다운 슈팅 게임(마치 플레이어를 내려보는 관점에서 슈팅 게임)을 만들고 이를 네트워크 게임 플레이가 가능하도록 확장하는 내용으로 이루어져 있다.  유니티가 제공하는 인공지능 컴포넌트를 이용하여 좀비가 돌아다니면서 플레이어를 쫓아다니는 기능을 만든다거나, C# 인터페이스를 통해 코드의 재사용성을 높이기 위한 방법, 3D 모델에 레이어 개념을 적용하여 효과적인 애니메이션 효과를 얻는 방법, 포톤 엔진을 이용하여 다중 플레이어 게임을 만드는 방법(로비 기반)까지 설명하고 있다. 

예제를 통해 유니티 기초부터 활용까지 훑어볼 수 있게 설명했다는 점에서 저자가 고민을 많이 했다고 느껴졌다. 기능을 펼쳐놓고 이것저것의 기능을 설명하는 것이 아니라 백지상태에서 조금씩 기능을 추가로 사용하면서 익혔는데, 그 과정에서 4개의 게임이 만들어지도록 함으로써 흥미가 떨어지지 않고 끝까지 편하게 읽을 수 있었다.

 

친절한 설명

이 책의 독자가 누구일까? 나는 프로그래밍이 완전히 익숙하지 않은 유니티 게임 개발자가 되고 싶은 사람들을 위한 첫 책을 찾는 사람이라 생각한다. 책이 두꺼운 이유는 저자가 너무너무 상세하게 각 개발 과정을 설명하고 있다. 예를 들어 코드 설명도 초기 구조 설명 -> 각 부분별로 기능을 추가하면서 수정되는 내용 설명 -> 최종 완성된 전체 코드를 설명한다. 즉 깃헙으로 제공되는 기본 코드 골격에 이런 기능을 추가할 것이야 하면서 설명하고, 각 기능을 붙이면서 코드 한줄한줄 의도와 동작 방식을 설명한다. 그리고 그렇게 부분 부분 수정한 다음 완성된 전체 코드는 이런 모습이야 라고 보여줌으로써 초보자들의 실수를 막아준다. 예제대로 하다 보면 실수로(?) 뭔가를 빼먹었을 경우 여러 단계에서 쉽게 확인하여 수정할 수 있었다.

유니티를 사용하여 게임을 만드는 것 이외에도 C#의 기본적인 언어 특성을 설명하는데 꽤 많은 공을 들인 책이다. 하지만 언어 자체를 집중적으로 다루었다기보다는 게임 제작에 필요한 수준으로 설명하고 있다. 어느 정도 개발경험이 있는 독자라면 이런 부분은 다른 프로그래밍 서적과 유사하기 때문에 쉽게 진도를 나갈 수 있다. 예컨대 변수, 함수, 메서드, 제어문, 배열, 상속, 인터페이스, 풀링, 싱글톤, 람다식 등을 소개한 부분은 금방 넘길 수 있을 것이다. 초심자의 경우 개념을 익히는 수준에서 잘 설명되어 있다.

나의 경우 1권을 통해 유니티 개념을 살펴보고 2개의 예제 게임을 직접 만들어 보는데 3일,  2권을 통해 네트워킹까지 해보는데 4일 정도 소요되었다. 주로 주말에 집중해서 읽고 실제로 해보면 금방 저자가 전달하고자 하는 의도를 이해할 수 있었다.

 

나의 실수

책 읽으면서 한 가지 실수한 것이 있는데, 소스코드가 깃헙으로 공유되고 있다는 사실을 알고 있었다. 그런데 개정판 리포지토리가 이전 버전과 다른 것을 몰랐다. 저자분의 리포지토리를 구글링을 통해  방문했을 때 이전 버전이 맨 처음 노출되어서 이를 클론 하여 실습을 진행하였다. 그랬더니 가끔씩 책 내용에는 Asset 폴더에 있다는데 아무리 찾아봐도 없는 경우가 발생했다. 예컨대 Zombie 스크립트도 없어서 직접 작성하였다. 그 과정에서 ZombieData라는 객체를 사용하는 코드가 있는데 (750쪽) 이와 관련된 코드가 깃헙에 제공되는 코드가 없어서 결국 책 색인 부분에서 찾아서 774쪽에 나온 ZombieData 스크립트의 완성 버전을 입력하여 원하는 기능을 완성하였다.  오타를 발견한 줄 알고 출판사에 알려줘야지 하고 메모해 두었는데, 개정판 리포지토리가 따로 있는 것을 알고 방문했더니 떡하니 있는 게 아닌가.. 

저자분이 이전판 리포지토리에서 개정판 리포지토리를 안내하도록 README.md 파일을 수정해주면 나와 같은 실수를 겪는 독자가 없을 것이다.

 

 

요약

이 책을 한번 읽었다고 해서 자신이 원하는 게임을 쓱쓱 만들 수는 없을 것이다. 하지만 기본 개념들을 익히고, 자신이 원하는 게임을 만들고자 할 때 어떤 부분을 좀 더 봐야 하겠구나라는 방향타를 얻기에는 정말 좋은 책인 것 같다.

 

이 책을 다음 세 문장으로 소개하고 싶다.

  • 유니티에 대한 친절한 설명. 입문자용으로 매우 적합. 너무너무 친절한(기존 개발자에게는 지루할 정도의) 설명
  • c#이나 다른 언어에 익숙하다면 코드 부분은 정말 손쉽게 넘어간다.
  • 게임을 만들면서 개념을 익힐 수 있도록 잘 설계된 책.

 

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."





 

한동안 많이 바쁜 관계로 도서 서평/리뷰를 신청하지 않고 있다가 약간 숨통이 트인 관계로 리뷰어 신청을 했다.
감사히도 2022년 한빛미디어의 리뷰어로 선정이 되어서 매달 원하는 책 3권 중 한권을 지원받아 리뷰를 할 수 있게 되었고, 올 해의 첫 번째 리뷰 도서로 '레트로의 유니티 게임 프로그래밍 에센스 (개정판)'를 리뷰할 수 있게 되었다.

 

이미 유니티 분야에 있어서 베스트셀러인 이 책이 최신버전의 유니티를 반영해서 개정판으로 출간 되었기에 더욱 기대가 되었다.

 

일단 책을 받아보고 든 생각은 '오, 두께가 엄청나군?!' 이었다.
그도 그럴것이 마지막 페이지가 1071페이지이며, 책이 너무 두꺼운 관계로 분철이 가능하도록 2권이 묶여있는 책이었기에...+_+;

 

 

전에 게임 프로그래밍을 해본적은 없지만 오랜 기간동안 여러가지 언어로 웹 및 서버 개발을 해왔던터라 프로그래밍 파트에 대한 부담감은 없었고, 유니티라는 새로운 개발 환경에 적응하는 것이 관건이었다. 일반적으로 포토샵이나 일러스트레이터의 경우 2D 이미지 편집 툴이기에 익숙했던 반면 유니티는 3D를 커버해야했기에 X, Y가 아닌 Z 축에도 익숙해져야 하는것이다.
(물론 유니티에서 2D, 3D 모두 개발이 가능하지만 3D가 또 묘미이니까..ㅎㅎ)

책을 앞부분부터 차근차근 따라하다보니 앞서 가졌던 3D 라는 공간에 대한 부담감은 일단 조금씩 사라졌다. 그냥 예제가 흘러가는대로 수치를 입력하고 해당 수치가 오브젝트에 어떤 영향을 미치는지 확인하면서 진행하니 금방 익숙하게 되었다.

 

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

 

언제나 그렇듯 책을 받고 처음 본 것은 저자 서문도 아니고 추천사도 아닌 목차를 보았다.
목차를 보면 대략 어떤 흐름으로 책의 내용이 진행되는지 손쉽게 알 수 있기에.

 

 

목차를 보고 든 생각은 하나부터 열까지 정말 디테일하게 쓰여진 책이구나 하는 것을 느낄 수 있었다. 유니티가 무엇인가 하는것부터, 개발 환경 세팅, 인터페이스에 대한 설명, 엔진의 동작원리 등 기본적인 내용들을 시작으로 유니티의 개발 언어인 C#의 기초문법, 오브젝트 제어하기 와 같이 기초적인 내용들이 초반부에 약 200여 페이지에 걸쳐 배치되어있다.

 

그 이후에는 실제 프로젝트를 클론해보며 실제 게임 제작에 필요한 스킬들을 익혀가는 내용들이 있고 중간중간 벡터에, 공간과 움직임 등 공간에서 오브젝트들을 제어하는데 필요한 수학적인 내용들을 공부할 수 있다.

 

후반부의 고급진 내용들이 특히나 마음에 들었는데, 단순히 싱글플레이가 아닌 멀티플레이어 게임을 제작하는 튜토리얼이 있었는데 가장 빨리 학습하고 싶은 장이었다. 하지만 앞단의 기초가 없이 따라하는 것은 비효율적이므로 빠르게 앞의 내용들을 끝내고 네트워크 플레이 부분을 학습하기로 했다.

 

책의 초반부는 가볍게 슬슬 넘기며 읽을 수 있었다.
많은 개발자들이 그렇듯이 IDE는 설치나 세팅이 비슷비슷하기에 개발환경 세팅부분은 대충 보고 넘기는 경향이 있는데, 개발 환경 세팅 부분을 보면서 감탄을 했다. 이 부분을 이렇게까지 자세히 설명한다고..?

 

모든 과정을 단계별로 스크린샷과 함께 친절하게 설명하고 있기에 개발 입문자들이 따라하기에도 너무나 쉽게 구성되어 있고 NOTE나 주석 부분에는 좀 더 디테일한 부가적인 내용들을 명시해두어서 작은것 하나라도 더 알려주려는 저자의 배려가 돋보였다.

 

개발자의 입장에서는 더욱이나 아는 내용들은 슬슬 넘겨가며 볼 수 있어서 빠른 호흡으로 책장을 넘길 수 있고, 특히나 C#문법 부분은 그냥 건너뛰고 본인이 주로 사용하는 언어의 문법과 다른 부분만 그때 그때 참조하며 보면 되기에 좀더 편하게 진도를 나갈 수 있다.

 

튜토리얼에 필요한 내용들을 하나씩 쌓아 나가는 느낌이고 챕터별로 난이도의 편차가 심하지 않고 무난기 계속 올라가는 느낌이랄까? 중간중간 필요한 개념들은 지속적으로 설명을 해 주기에 공중 급유기의 급유를 받으며 지속적으로 비행하는 전투기의 느낌을 받았다. (ㅋㅋ)

 

책의 마지막 부분의 네트워크 게임 제작부분은 가장 흥미롭게 진행했던 부분인데, 멀티 플레이어 게임 제작 시 게임 서버의 종류, 플레이어 데이터의 동기화, 네트워크 권한분리, RPC 등의 흥미로운 내용들이 이미지와 함께 알기 쉽게 설명되어있고, 책 전반적으로 모든 코드에 주석이 심각할 정도로 잘 달려있어서 정말 편하게 튜토리얼을 진행할 수 있었다. (코드 반 주석 반?!)

 

이 책의 튜토리얼을 따라하면서 가장 좋았던 것은 유니티를 사용하여 프로젝트의 A to Z를 함께 해볼 수 있다는 것 뿐 아니라 튜토리얼에 나오는 각종 기능들을 실제 자신의 프로젝트에 바로 적용해서 써먹을 수 있다는 점인 것 같다. (바로 실무에 적용 가능한 스킬을 얻을 수 있다!)

 

책을 보기 전에는 유니티를 이용하여 어떻게 게임을 만들 수 있을까 하는 생각이 들었다면, 책을 마무리 지은 시점에 드는 생각은 이 아이디어는 이렇게 구현해볼 수 있겠군! 이라는 자신감이 든다.

 

유니티로 게임 개발을 해보고 싶은 입문자 그리고 기존에 어떤 분야가 되었든지 개발을 하고 있는 현직 개발자 모두에게 도움이 될 수 있는 좋은 책인 것 같다.
때로는 무기로도 쓸 수 있다는 점에 1점 더..ㅎㅎ

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

레트로의 유니티 게임 프로그래밍 에센스 <개정판> 입니다! 유니티와 C#을 기반으로 게임 프로그래밍을 위한 환경 세팅부터 4개의 게임을 실제로 만들어 볼 수 있도록 하는 책입니다!

복잡한 설명 없이 빠르게 기본을 익히고 게임을 실제로 만드는 데 필요한 코딩 한줄 한줄 알려줍니다. 입문서 + 활용서로서 손색이 없습니다! 유니티 엔진을 사용하지만 잘 몰라도 게임을 만드는데 필요한 부분을 알려줍니다

 

C#입문, 유니티 사용, 실전 게임 개발을 한 권에 할 수 있습니다. 사실 두께가 상당해서 자체적으로 두 권으로 분권해주셔서 가볍게 사용할 수 있습니다.

책에서 제공하는 게임 4가지는 다음과 같습니다

1. 탄막 슈팅 게임 - 닷지

1인용 게임으로 최고기록을 남길 수 잇습니다.

2. 2D 러너 게임 - 유니런

정말 베이직하고 고전적이지만 꾸준히 사랑받는 무한런 게임입니다. 쿠키런의 본질을 구현할 수 있습니다.

3. 탑다운 슈터 게임 - 좀비 서바이버

제가 유튜브로 많이 보던 좀비 서바이벌이랑 비슷합니다. 슈팅게임이니까 세밀한 컨트롤이 필요한 것은 물론이고 총을 쏘고 맞는 이펙터 구현이 실감나는 게임을 만들게 해주는 데 중요하죠

4. 네트워크 협동 게임 - 좀비 서바이버 멀티플레이

혼자 하는 게임은 지루할 수 있지만 친구와 함께 협동하면 배로 짜증나겠죠(ㅈㄱㅊㅇ) 하지만 그 만큼 다채로워서 게임을 계속하게 만들겁니다. 혼자하는 것을 구현하는 것 뿐만 아니라 다른 플레이어의 플레이도 반영하는 네트워크가 사용되어 이 책에서 배울 수 있는 끝판왕입니다.

이번에 나온게 2022년 2월쯤에 나와서 굉장히 따끈따끈합니다. 한빛출판네트워크에서 알려준 개정사항은 다음과 같습니다

개정판이라 바뀐 부분은 유니티 2021에 맞춘 것과 추가적으로 기능을 알려주십니다. 

1부에서는 유니티 환경을 설정하고 간단한 원리를 알 수 있습니다. 이렇게 오른쪽 사진과 같이 그림을 통해 글을 더 쉽게 이해할 수 있고, 그 과정을 책에 적혀진 코드를 따라 쳐보면서 실감할 수 있습니다.

표지는 푸른 색 계열을 좋아하는 저로서는 굉장히 깔끔하고 손이가는 디자인이었습니다. 가격이 꽤 있는 편이지만 그 양과 무게, 내용을 보면 납득이 될 가격입니다!

2부밖에 안되지만 그 내용이 좀비 슈터 게임이기 때문에 양이 장난 아닙니다... 이거 한권 다 떼면 어디가서 게임 만들 수 있다고 당당하게 말할 수 있는 아마추어는 되어있을 겁니다

네비게이션 시스템.... 맞죠 맵 속에서 플레이어를 설정해야하고 그래야 다른 이벤트를 발생시킬텐데... 이런 게임을 하면서도 생각하지 못했던 시스템을 알려주면서 게임 제작에 많은 공이 들어간다는 걸 다시한번 알 수 있게 되었습니다.

 

유튜브에 레트로의 유니티만 치셔도 저자의 유튜브 채널이 나옵니다. 

실제 게임 플레이 영상을 보실 수 있어요:)

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

KakaoTalk_20220306_203412132.jpg

 유니티를 접한지 오래 되었지만, 게임 개발은 내게는 머나먼 영역이라고 생각했다. 하지만 언제나 게임 개발에 관심이 있었기에 우연한 기회에 도서를 접하고 유니티 게임 프로그래밍에 대해 자세히 알아볼 수 있는 계기가 되었다.

 

먼저 게임 프로그래밍의 영역이 방대한 만큼 책의 두께가 굉장히 두껍다. 그만큼 개발에 필요한 지식들이 방대하다는 뜻인데, 개발에 대한 내용들을 어렵지만은 않게 풀어썼다는 점에서 초심자들에게도 추천하고 싶은 책이다. 알찬 구성에 상세하고 친절한 설명들이 첨부되어있어 독학으로 학습하기에도 매우 용이하다. 유니티의 기본적인 사용법이나 예시들이 매우 자세하게 기술되어 있어 책을 따라가며 실습을 하다보면 금방 유니티의 기본적인 기능들을 익힐 수 있을 것 같다.

 

어렵고 막막하게만 보이던 게임 개발을 가장 친절하게 알려준 책이 아닐까라는 생각이 든다. 처음에는 두꺼운 책의 두께에 놀라지만 세심하고 꼼꼼한 집필진과 출판사의 열정이 보이는 책이라 앞으로도 책을 통해 꾸준히 유니티를 공부해나가고 싶다. 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

프로그래머로 일하고 있지만, 게임개발은 학부때 간단한 게임을 만들어본 이후로 건드려본적이 없었습니다.

 

 최근 여러가지 게임들을 해보면서 이런 게임들은 어떤 방식으로 만들어졌으며, 어떤 기술을 이용하고 있을지 문득 궁금증이 생겼었는데

 

이번 기회를 통해 직접 게임을 만드는 기술을 배우고 있습니다.

 

책 내용이 매우 방대하여 아직 절반도 읽지 못하였는데, 쉬운 말로 차근차근 설명해주고 있어서,

 

기본적인 프로그래밍 실력만 있다면 아주 쉽게 따라갈 수 있습니다.

 

가장 기본적인 유니티를 설치하는 법 부터,  GUI를 통해서 각 컴포넌트를 배치하거나 설정하는 법,

 

스크립트를 활용하여 동작 설정 및 상세 설정을 하는 법등 여러가지 방법을 쉽게 설명해 주고 있습니다.

 

이 책의 장점은 우선 스텝 바이 스텝 쉽게 따라 갈 수 있도록 모든 절차를 잘 설명해주고 있는 것과

 

많은 스크린샷을 통해서 글로만 전하기 힘든 내용들을 잘 전달해주고 있습니다.

 

저처럼 게임개발에 관심이 있는 타분야 프로그래머들에게 강추하는 책입니다.

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

screencapture-blog-naver-rapperkjm-222665252135-2022-03-06-23_37_35.png

 

photo_2022-03-06_23-23-32.jpg

 

photo_2022-03-06_23-23-39.jpg

 

 

첫인상은 두께가 심상치 않다는 것이었다. 실제 페이지는 1000페이지가 넘어가는  두꺼운 책이다. 다행이도 쉽게 나누워서 2권으로 분리되는 구조를 가지고 있어서 한권 씩 들고 다니기에도 편하게 제작이 되어 있어 편하다. 페이지는 많으나 설명을 쉽게 하고 있어서 읽어 나가면서 실습 하는 것은 어렵지 않다.
 
게임 4가지를 만들겠다고 책에서 무엇을 설명할 것인지를 명확하게 제시하고, 설명을 풀어 나가고 있어서 이해가 쉽고 집중력을 잃지 안도록 안내하고 있다.
 
개인적으로 회사에서  유니티를 가지고 시뮬레이터를 제작 하는 프로젝트가 진행 중인 상황에서 개발자 분과 모델러 분들과 협업을 진행 하여야 하는 상황이 발생 되었는데.  이야기 나눌겸 그 분들 작업 모니터를 같이 보면서 이야기를 나누어야 하는 부분들이 있다. 이 책을 보기 전까지는 화면들을 보면 이해가 안가는게 많았는데. 책에서 설명하는 바를 보니 이제는 유니티 개발 담당 팀원들과 이야기가 잘 통 할 것 같다.
 
단계적으로 차근차근히 설명하고 있기에 책의 매수는 많아 보여도 시간을 꾸준히 투자해서 읽고 따라하다 보면 책의 초반에서 이야기 했던 게임을 만들어 나가는 데에 문제가 없다.
 

image3.png

 

image2.png

 

image1.png

 

image.png

 

 

상속, 컴포넌트, 메시지, 함수등 프로그래밍의 여러가지 개념을 다양한 이미지를 활용하여 쉽게 설명하고 있다,
 
20여년즘 how to becom a OOO 이라는 제목의 잭들이 많이 나왔었는데. 이책은 how to becoma a unity programmer 라는 타이틀을 달아 주고 싶다.

1. 유니티는 게임개발자가 사용할 수 있는 최고의 게임 엔진 중 하나다. 프로그래머가 아닌 사람들도 기능을 직관적으로 이해할 수 있도록 GUI가 구성되어 있으며 수정한 내용을 바로바로 빌드해서 볼 수 있다는 것도 큰 장점이다. 다만 아무리 직관적이라 하더라도 그 엔진을 사용 가능한 수준까지 배우는 것은 또 다른 일이다. 회사에서 실무로 사용하며 배운다면 가장 좋겠지만, 워낙 잘 알려진 엔진이라 사용경험이 있거나 이해도가 어느 정도 있는 사람을 필요로 한다. 그렇다면 유니티와 같은 엔진은 어떻게 학습해야 할까?

 

레트로의 유니티 게임 프로그래밍 에센스(개정판)은 유니티 엔진을 학습하는데 있어 큰 인기를 끌고 있는 책 레트로의 유니티 게임 프로그래밍 에센스의 개정판이다. 유니티 2021 내용으로 업데이트 되었고, 스크립터블에셋, 어드레서블 시스템에 대한 내용을 추가로 담고 있으며 유니티 2022 호환을 포함한다.

 

아무리 개념을 배우고 레퍼런스 문서나 프로젝트를 참고한다 하더라도, 직접 게임을 만들어보는 것만큼 배움의 효율을 체감할 수는 없다. 게임을 개발하기 위한 엔진이고(그렇지 않은 경우도 있겠지만), 그걸 배우는 방법은 직접 게임을 만드는 것이다. 그렇다고 게임을 직접 기획해서 만드는 것은 유니티 엔진을 배우는 것 외에 고려해야 할 사항이 늘어나는 것이고, 기획적인 부분을 제외한 개발 부분에 집중하기 위해 보통은 클론 프로젝트를 많이 하는데, 이 책 역시 몇 개의 게임 프로젝트를 예시로 유니티 엔진을 이해하고 활용할 수 있도록 돕는다.

 

 

2. 레트로의 유니티 게임 프로그래밍 에센스(개정판)은 총 4개 게임을 만들어볼 수 있다.

● 탄막 게임 - 닷지

● 2D 런게임 - 유니런

● 탑 다운 슈터 게임 - 좀비 서바이버

● 네트워크 게임 - 좀비 서바이버 멀티 플레이어 버전

 

책은 유니티를 한 번도 접해보지 못한 사람들도 유니티를 설치하고 위 프로젝트를 하나하나 따라서 진행할 수 있도록 일목요연하게 잘 설명되어 있다. 이 책의 가장 큰 장점이라 함은 개념을 이미지와 예시를 충분히 활용하여 설명한다는 점이다. 따라서 단순히 코드를 따라하는 것에서 그치는 것이 아니라 프로그래밍의 개념을 이해하고, 위 프로젝트가 끝난 후에 새롭게 자신만의 게임을 만들 수 있도록 돕는다.

 

개정판 이전에 나왔던 책도 공부하면서 참 두껍다고 생각했는데, 레트로의 유니티 게임 프로그래밍 에센스(개정판)은 무척 두껍다. 굳이 페이지를 확인하지 않아도 기존에 봤던 IT 관련 서적과 비교해도 무겁다는 것을 알 수 있는데 공식사이트 기준 1102쪽으로 기재되어 있고, 그런 이유 때문인지 개정판 역시 2권으로 책이 나뉘어져 있다. (그럼에도 한권 한권 참 두껍다)

 

레트로의 유니티 게임 프로그래밍 에센스(개정판)는 총 19개 장으로 구성되었다. 

앞에 1~3장은 유니티를 설치하고, 인터페이스를 둘러보며 기본적인 개념을 알려준다. 그리고 4장과 5장은 C# 프로그래밍(이 책은 C# 기준으로 유니티를 다룬다)의 개념을 설명하는데, 변수나 함수, 제어문, 배열 등의 기본적인 C# 개념과 클래스와 컴포넌트를 이용해서 유니티의 오브젝트를 제어하는 방법을 다룬다.

 

이후 앞서 얘기한 게임 프로젝트가 진행되는데, 간단한 프로젝트(닷지)에서 시작해서 점차 복잡한 프로젝트로 나아가며 게임 개발에 필요한 게임 매니저의 개념, 유니티 공간의 개념, 빌드, 애니메이션, 인터페이스 등 유니티 개발에 필요한 항목들을 자연스럽게 배울 수 있게 된다. 각 프로젝트마다 3개 내외의 장을 할애되는데, 코드 작성은 물론이고 그 코드가 왜 그렇게 작성되어야 하는지, 그리고 다른 어떤 방법들이 있는지 개념을 이미지와 사례를 들어 설명해주기 때문에 단순히 코딩을 따라하는데서 그치지 않고 나중에 활용할 수 있도록 돕는 점이 무척 좋다.

 

 

3. 이 책의 장점이라 함은 전공자는 물론이고 비전공자도 (쉽지는 않겠지만) 잘 이해할 수 있게 책을 구성했다는 점이다. 아무래도 예시를 들거나 이미지로 개념을 설명하는 것이 상대적으로 번거롭고 힘든 작업이었을텐데 전달하는 부분에서 많은 고민을 했음을 몸소 체감할 수 있다.

 

또한 프로젝트 중심으로 책이 진행되지만, 자연스럽게 유니티에 필요한 개념들을 담아내는 것도 좋은 부분이다. 공부하는 입장에서도 뭔가 직접 만들어보면서 배우는 것이 재미있고 의욕도 생기는데, 중간중간 흐름을 끊어서 개념을 가르치는 것이 아니라 각 프로젝트마다 적절하게 유니티를 이해하고 활용하는데 필요한 개념들을 적절히 배치하였다. 

 

모두 일일히 찾아보진 못했지만, 이 책에서 다루는 범위는 유니티 에디터, C# 프로그래밍, 애니메이션, 백터 수학, UGUI, 머터리얼/라이팅/글로벌 일루미네이션, 디자인 패턴, 네트워크 등이다. 심도 있게 다루기에는 다양한 주제지만 개념을 이해하고 부족한 부분을 찾을 수 있도록 돕는데는 충분하다.

 

4. 이 책을 개정판 전에 따로 구입해서 공부를 했었고 지금 진행 중인 개인 프로젝트에 많은 도움을 받았다. 그리고 한빛미디어를 통해 개정판을 받을 수 있었는데 사실 엄청난 변화는 아니지만, 유니티가 지속적으로 버전을 업데이트하는 만큼 책도 업데이트가 되어 새롭게 접하는 사람들에겐 좋은 일이라 생각한다.

 

시중에 많은 유니티 책이 있고 다 장단점이 있겠지만 레트로의 유니티 게임 프로그래밍 에센스(개정판)의 가장 큰 장점은 폭 넓은 개념을 비교적 쉽고 자연스럽게 다룬다는 점에 있다. 단점이라면 책이 워낙 두꺼워서 컴퓨터 옆에 놓고 보기가 좀 힘들다는 것 정도가 될까.

 

유니티는 무척 매력적인 엔진이다. (개인이라면) 별도의 개발 비용이 필요 없고, 쉽고 직관이라 자신이 생각하는 것들을 비교적 쉽게 구현할 수 있다. 하지만 무엇이든 처음 시작은 어려운 법이다. 아무리 쉽고 직관적으로 만들어졌다고 하지만, 아무 것도 모르는 상태에선 코코스나 언리얼이나 유니티나 크게 다르지 않다. 사실 요즘은 유튜브나 블로그에서도 유니티를 잘 가르치는 곳이 많긴 하지만, 잘 정리된 커리큘럼으로 처음부터 끝까지 제대로 배워보고 싶다면 레트로의 유니티 게임 프로그래밍 에센스(개정판)가 좋은 선택이 되리라 믿는다. 

이 책이 묵직한 데는 다 이유가 있었습니다.

유니티가 처음인 사람들을 위한 꼼꼼한 구성이 눈에 들어왔습니다.

1. 지면을 아끼지 않고 절차를 보여주는 이미지와 이해를 돕는 가이드를 넣었으며,

2. 늘어짐 없이 필요한 텍스트로 구성하여 집중하기 좋았죠.
처음부터 탄막 슈팅게임을 이 책을 통해 만들기까지, 막힘없이 진행할 수 있었습니다.

 

그냥 적당히 게임을 만들고 끝내지 않았습니다.

제대로 만드는 것을 이 책은 가르치고 있죠.

'이렇게 쓴다'로 넘어갈 수 있지만 더 나아가 무엇을 고려해야하는지 다루는 것이 인상적이었습니다.

 

 

대학 강의 교재로 쓰이고 개정판이 나올 만큼 '소문난 명강의'라는 명성이 아깝지 않았습니다.

이 책이 다루는 4가지 게임은 각각 장르가 달라 응용과 활용을 기대할 수 있고,

버전은 2021, 2022를 호환하므로 걱정할 것은 아니죠.

그야말로 '든든하다'고 말할 수 있는 책이라고 할 수 있겠네요.

 

 

정말 오랫만에 내 지적 능력의 한계에 도전하는 책을 한 권 읽었는데 그 책은 바로 레트로의 유니티 게임 프로그래밍 에센스(개정판)라는 유니티 관련 강의서적이다. 최근에 제페토 아이템을 만들면서 블렌더와 함께 유니티를 써보게 되었는데 유니티를 사용하면 제페토 아이템 뿐 아니라 게임과 다양한 형태의 2D, 3D 아트웍들을 만들 수 있다고 하길래 좀 더 전문적인 기능을 익히고 다양한 컨텐츠들을 제작해보고 싶어서 책을 읽게 되었다.

두껍다는 얘기는 들었지만 실제로 받아보니 책의 두께가 상상을 초월했다.1.JPG

 

그래도 센스있게 1,2로 두권으로 나눠서 가지고 다닐수 있도록 제작해줘서 참 다행이라는 생각이 들었다.

참고로 1권은 1~5부, 2권은 6, 7부 및 부록이 실려 있다.

3.JPG

 

이 책은 유튜버이자 유니티 명강사인 레트로(이제민)님이 쓴 책인데 결론부터 말하자면 초보자들도 유니티를 활용해 게임을 제작할 수 있도록 꼼꼼하게 세심하게 잘 만든 책이라고 할 수 있다.

물론 코딩과 C#프로그래밍에 대한 지식이 필요하고 씬이나 오브젝트를 만들고 다루기 위해서는 3D모델링, 애니메이션, 벡터 수학 등에 대한 지식도 필요하지만 책의 내용이 아주 쉬운 단계에서부터 시작하기 때문에 잘 모르는 초보자들이라도 (본인의 노력과 시간투자 여하에 따라) 충분히 결과물을 만들어낼 수 있다고 생각된다.

4.JPG

 

레트로님은 예전에 유튜브에서 유니티 관련 영상을 몇번 보긴 했었는데 강의 뿐 아니라 책도 정말 잘 쓰시는 분이라고 생각된다. 특히 이 책은 유튜브나 인터넷에서 동영상으로 된 강의를 찾아서 참고할 수 있고 디스코드를 통해 문의에 대한 응대도 해주기 때문에 학습에 도움이 많이 됐다. 그리고 책에 예시로 쓰인 소스코드 같은 것들도 깃허브와 한빛미디어 홈페이지에서 다운로드 받아서 쓸 수 있었다.

5.JPG

 

책에는 총 4가지 종류의 게임을 만드는 방법이 나와 있는데 사실 이걸 처음부터 하나하나 입력해서 만들려면 시간이 어마어마하게 오래 걸릴 듯 하다. 하지만 레트로님께서 거의 모든 자료를 제공해주셨기 때문에 시간절약이 많이 되서 아주 유용했고 사용법까지 잘 정리되어 있어서 참 좋았다.

6.png

 

이 책을 통해 만드는 게임은 탄막 슈팅게임 닷지, 2D 러너게임 유니런, 탑 다운 슈터 게임 좀비 서바이버, 네트워크 협동 게임 좀비 서바이버 멀티플레이어 총 가지로 뒤로 갈수록 제작난이도가 있는 편이다.

8.JPG

 

 

 

9.png

 

 

개인적으로 네트워크 협동게임을 별로 안좋아하는데다 네트워크의 개념이나 포톤을 다루는 것도 아직 좀 어렵다고 느껴지기 때문이다. (사실 협동게임에 관심이 없어서 그런 걸지도...)9.JPG

 

9.png

 

나는 제페토 아이템을 만드느라 기본적인 유니티 사용법이나 메뉴에 대해서는 알고 있는 상태에서 읽기 시작했는데 그렇지 못한 사람들도 쉽게 이해할 수 있게끔 초반에는 가장 기초적인 유니티에 대한 설명들이 화면캡쳐와 함께 아주 상세하게 잘 나와 있다. 물론 뒷부분에는 C#에 대해서도 비슷하게 설명이 잘 나와 있는데 책을 읽으면서 관련 유튜브 영상과 동영상 강의들을 같이 보면서 읽으면 훨씬 이해가 쉬우니까 꼭 같이 보면 좋을 것 같다.

11.JPG

 

사실 게임은 종합 예술이라는 말이 어울릴 정도로 다양한 분야의 기술과 노하우가 접목되어 있는 컨텐츠라고 할 수 있는데 유니티를 통해 게임을 만드는 책인 만큼 이 책에서도 다양한 분야의 내용들이 함께 다뤄지고 있다.

이 책에서 다루고 있는 내용들은 유니티 에디터, C#프로그래밍, 애니메이션, 벡터수학, 아트, 디자인패턴, 네트워크 등이며 AI나 모바일 빌드, 카메라 자동추적 등에 대한 부분도 다루고 있다.

즉, 게임을 만드는 것을 배우기도 하지만 유니티로 할 수 있는 다양한 분야의 작업방식과 이론들을 자연스럽게 함께 배울 수 있어서 좋았다. 나처럼 영상편집이나 애니메이션, 일러스트 같은 일을 하는 사람의 경우에는 해당 분야에 유니티의 기능을 활용해볼 수 도 있을 것이고 프로그래머나 디자이너라면 본인의 경험을 살려 차별화된 게임을 만들어낼 수도 있을 것이다.

12.JPG

 

그리고 게임에는 다양한 분야의 기술이 사용되는만큼 모르는 분야가 있을 수 밖에 없는데, 초보자들을 위해 그런 용어에 대한 설명까지 잘 나와 있어서 참 좋았다.

 

아무래도 문과이다보니 개인적으로 제일 어려웠던 부분은 벡터 수학에 대한 부분이었는데 이 책의 내용을 다 이해하는 게 너무 어렵고 시간이 많이 걸린다 싶으면 앞에서 언급한 소스들을 다운받아 조금씩 변형시켜 실행시켜보면서 점차적으로 이해도를 올려가는 것도 좋은 방법이 아닐까 싶다. 13.JPG

 

 

 

 

마지막부분에는 목차가 잘 정리되어 있어서 모르는 단어나 찾아봐야 되는 부분을 쉽게 찾을 수 있도록 잘 만들어져 있었다. 그리고 이 책은 개정판이라 유니티 2021버전에 맞춰 내용이 업데이트 되어 있었고 스크립터블 에셋 부분이 추가되고 어드레서블 시스템은 별도 부록으로 제공된다.

 

책의 내용도 정말 좋고 도움이 많이 됐지만 이 책의 저자인 레트로님에 대해 보다 많이 알게 되면서 배운 점들도 많았다. 게임개발자이며 관련 강의로 유명한 강사, 유튜버이며, 게임 동아리 회장인데 디자인, 스토리텔링과 컴퓨터 공학을 배워 두 가지 분야를 잘 다루고 설명할 수 있다는 점이 굉장히 매력적으로 느껴졌다.

나 또한 예술과 기술의 경계를 넘나들며 작업하고 싶고 피지컬아트에만 머무르지 않기 위해 다양한 최신 IT기술들을 배우고 있는데 과거에는 다른 영역으로 취급됐던 분야들이 최근에는 다양한 형태로 융합되고 재창조되면서 새로운 분야나 작품들을 만들 수 있게 되었기 때문에 이렇게 계속 새로운 영역에 대한 배움을 지속하지 않을 수 없는 것 같다.17.JPG

 

2019년초에 발간되었던 "레트로의 유니티 게임 프로그래밍 에센스"가 2022년 3월에 개정판으로 업그레이드되어 다시 찾아 왔습니다.

 

 

01.jpg

 

02.jpg

 

 

한빛미디어의 "소문난 명강의" 시리즈는 온라인 강의 플랫폼이나 오프라인 강의를 통해 검증된 실력있는 강사들이 집필한 기술서적 시리즈 입니다. 앱을 만들어 보고 싶은데 무엇부터 해야 할지 모를 때 "소문난 명강의: 오준석의 플러터 생존코딩"이 큰 도움이 되었던 것처럼, 이 책 "소문난 명강의: 레트로의 유니티 게임 프로그래밍 에센스"도 게임은 만들어 보고 싶은데 뭘 해야 할지 모르던 제게 많은 도움이 되었던 기억이 있습니다. 그때가 2019년으로 벌써 3년전이네요. 그동안 유니티도 버전업이 많이 되었을텐데, 그 추세를 반영하여 2022년 3월에 "레트로의 유니티 게임 프로그래밍 에센스, 개정판"이 발간되었습니다.

 

 

03.jpg

 

 

이 책의 특징으로는 우선 일반 기술서적 2권 분량의 방대한 양을 들 수 있습니다. 2019년에 950페이지정도였는데 2022년의 개정판은 1070여페이지로 120페이지정도가 늘었습니다. 전작과 개정판의 큰 차이점으로는 3가지를 들 수 있는데요, 먼저 유니티 2019.1 버전에 맞춰 구성되었던 책의 내용들이 개정판에서는 유니티 2021.2 이후 버전에 대응할 수 있도록 내용들이 갱신되었습니다. 또한 경우에 따라 모노비헤이비어보다 메모리 관리를 더 효율적으로 할 수 있는 스크립터블 오브젝트 사용법을 추가하였습니다. 끝으로 부록 한챕터를 어드레서블 시스템 관련 내용으로 추가하여 어드레서블 시스템을 활용한 에셋의 관리와 로드 방법에 대하여 설명하였습니다.

 

 

 

04.jpg

 

 

 

책은 천여페이지가 넘어 갈 정도로 두껍지만, 휴대하기 편하도록(?) 이렇게 2권으로 분리가 가능합니다. 개정판의 경우 120여페이지가 더 늘었지만 2019년판에 비해 좀 더 얇아 진 것도 신기합니다. 특히나, 책에 소개된 소스코드에 오류가 없었던 점도 초심자들에게는 무척 고마운 점인데요, 그만큼 편집에 신경을 많이 쓴 흔적이라고 여겨 집니다.

"레트로의 유니티 게임 프로그래밍 에센스"는 크게 7가지 주제로 구성되어 있습니다.

1. 게임 제작 엔진 유니티 설치과정과 인터페이스를 설명하고 작동 원리에 대하여 이해

2. 유니티를 제어하는데 사용하는 C#의 문법을 설명하고 게임 오브젝트 제어 방법을 이해

3. 간단한(?) 3D게임 닷지 제작해 보기

4. 벡터에 기반한 공간 개념에 대해 이해

5. 2D 러너 게임 유니런 제작해 보기

여기까지가 1권의 내용입니다. 프로그래밍에 대해 전혀 모르는 초보자들이나 게임제작에 대해 전혀 지식이 없는 개발자들도 유니티가 무엇인지 어떻게 사용하는지 쉽게 이해할 수 있도록 상세한 설명과 이미지로 잘 구성되어 있습니다. 쉬운 설명과 풍부한 그림으로 시종일관 입문자의 눈높이에서 최대한 쉽고 자세하게 설명하고 있어서, 유니티도 유니티지만, 제 경우 이 책의 C# 언어 설명을 통해 클래스 사용에 대한 이해도가 많이 올라갔고 유니티외의 다른 개발관련 플랫폼들에 대한 이해도도 많이 개선되었던 것 같습니다.

이어지는 2권은 아래의 내용으로 구성되어 있습니다.

6. 탑다운 슈터 게임 좀비 서바이버 제작해 보기

7. 네트워크 협동 게임: 좀비 서바이버 멀티플레이어 구현

1권에서 유니티의 기본적인 기능과 C#의 초보적인 문법으로 게임제작을 구현해 봤다면, 2권에서는 3D캐릭터 제어, 인터페이스나 다형성 같은 좀 더 복잡한 내용으로 소스 코드가 구성되어 있고, 네트워크 플레이나 각 OS별 빌드 방법들에 대해서 설명되어 있습니다. 1권을 통해 기본기를 다진다면, 2권을 통해 좀 더 전문 개발자가 되는 로드맵을 보여 주고 있다고 생각됩니다.

특히, 6부 좀비 서바이버의 15장 15.3 GunData 부터는 2019년판의 개발 아이디어를 수정하여 스크립터블 오브젝트를 사용하는 소스와 설명으로 변경하여 개발 수준을 업그레이드하는데 도움을 주고 있습니다. 가능하다면 2019년판과 이번 개정판의 설명과 소스코드를 비교해 보는 것도 도움이 될 것 같네요.

이 책의 저자인 이제민 강사를 처음 알게 된 건, 유튜브와 인프런 강의를 통해서 였습니다. 자신감 넘치는 어조와 쉽고 명쾌한 해설로 유니티와 C#에 대해 설명하는 것을 보고 유료강의도 수강하고 2019년판 책도 구입해서 열심히 봤던 기억이 납니다. 덕분에 게임을 만들어 보고 싶다는 갈증도 많이 해소했었구요. 한동안 잊고 있었는데, 이번에 더욱 업그레이드된 개정판을 보면서 게임 개발에 다시 도전해 볼까하는 마음이, 자신감이 새록 새록 돋아나는 2주간이었습니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

예전에 유니티를 잠시 해봤지만 그때는 그냥 책을 한번 따라해본 정도 수준이었고,

기껏해봐야 진짜 간단한 수준에서 작업하는 정도 수준이었다.

하지만 "레트로의 유니티 게임 프로그래밍 에센스" 이책은 개념부터 잘 설명이 되어있어 좋았다.

 

KakaoTalk_20220306_061614545.jpg

 

 

일단 이책을 받았을때 책이 너무 두꺼워 놀랐다. 

하지만 친절하게도 1권과 2권으로 나눌 수 있도록 분책이 가능하여 다시한번 놀랐다.

222.jpg

역시나 독자들을 생각해주는 센스...

 

외향은 그렇고 이제 내부 내용에 대해 간단히 설명하면,

처음에는 유니티에 대한 설명, 그리고 개발을 하는 언어인 C#에 대한 설명으로 시작한다.

이후 닷지라는 게임을 만들면서 유니티와 C#을 활용해 게임을 만드는 법을 알게 해주고 있다.

111.jpg

 

444.jpg

여느 책들과는 달리 너무 쉽지도 너무어렵지도 않게 구성되어 있으며, 따라해야 할 부분은 

캡쳐를 통해 바로 따라할수 있도록 구성되어 있고, 벡터의 개념등을 정리해야 할 부분은 

텍스트와 이미지로 독자들을 쉽게 이해시키기 위해 많이 노력한 책임은 분명하다

333.jpg

 

이렇게 책을 따라 하다보면 어느덧 유니티 준 전문가가 되어있는 나를 볼 수 있을것이다. ^^

 

다음부터는 롤플레잉 게임을 개발수 있는 유니런 및 배경스크롤링 관련 내용이 나오며 1권가 끝이난다.

 

2권 에서는 좀비 서바이버게임을 만드는 방법에 대해 설명하고 있다.

KakaoTalk_20220306_061627219.jpg

진짜 게임개발에 관심이 있는 독자라면 네트웍 게임을 어떻게 만드는지도 나와 있기 때문에

이 책을 손에서 쉽게 뗄 수 없을것이다.

 

막연한 호기심에 이책을 신청했지만, 이번 선택도 아주 좋았던것 같다.

이제 나도 게임 개발자 이다. 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

필자는 게임 프로그래밍에 관심이 많다. 나를 개발이라는 세계로 인도한 것이 게임이라는 사실 때문일까. 근래에 VR을 사용해 보면서 이 분야에 관심이 좀 더 생긴 것 같기도 하다. 이전에도 몇 권의 유니티 책을 본 적이 있었다. 다들 쉽고 재밌게 설명하지만 완독후엔 늘 막막함과 함께 약간의 아쉬움이 남았다.

 

처음 이 책을 받았을 때 놀랐던 사실은 이 책의 분량이 2권으로 구성된 1073 페이지에 육박한다는 사실이었다. 방대한 분량이라 목차를 살펴봤다. 흥미롭게도 수학과 네트워크에 대해서도 다루고 있었다. 대부분 관련 항목은 별도의 책으로 분리하는 등 입문책에는 잘 찾아볼 수 없었던 것이었다.

 

대상 독자

이 책은 유니티는 물론 프로그래밍에 대한 지식이 전혀 없는 입문자와 비전공자, 아티스트를 대상으로 한다고 책에서는 설명한다. 필자는 약간의(?) 전공 지식을 가진 상태로 책을 읽었으며 책의 구성은 매우 만족스러웠다. 구성과 관련된 내용은 아래에서 자세히 다루도록 하겠다.

 

느낀점

1부 : 유니티 준비하기

우선 이 책에서 가장 좋았던 부분은 원리 중심의 설명을 많이 한다는 점이다. 다른 책에서는 '이런 상황에서는 이 기능을 쓰면 된다'라고 설명하여 사용할 수 있는 상황이 한정적이라면 이 책에서는 상황이 아니라 원리에 초점을 맞춤으로써 문제가 발생하면 스스로 퍼즐을 맞춰나갈 수 있다.

 

필자는 특히 유니티의 원리를 설명하는 1부-3장에서 많은 영감을 얻었다. 지금까지는 유니티를 배우며 '코드가 동작한다'는 것에 감탄할 뿐이었지만 이제는 '이 코드가 이래서 동작하는구나'라는 것을 깨달을 수 있었다.

 

2부 : C# 프로그래밍

C#의 문법을 소개하는 이 파트에서는 정말 입문자에게 초점이 맞춰져 있음을 느낄 수 있었다. 혹여 독자중에 문법을 이해하기 어려운 부분을 발견하더라도 걱정마시라. 프로젝트 구현시 코드가 있는 부분은 저자가 코드를 자세하게 설명하기 때문에 큰 압박감을 가지지 않아도 될 것 같다.

 

3부 : 탄막 슈팅 게임 - 닷지

이 파트에서는 프로젝트를 구현한다. 난이도는 크게 어렵지 않은 수준으로 초반에 흥미를 돋구기에 적합한 프로젝트다. 이 파트를 통해 사용자에게 입력받는 방법, 동적으로 오브젝트를 생성하는 방법, UI를 구현하는 방법, 게임 메니저 통해 게임의 규칙을 구현하는 방법을 익힐 수 있다.

 

이 파트에서 인상적인 부분은 사용자에게 입력받는 부분을 전통적인 방식으로 구현한 뒤 입력 매니저를 통해서 구현하는 방식으로 개선하는 등 여러가지 방법을 소개하는 것이다.

 

4부 : 공간

개인적으로 책의 구성에 감탄했던 파트다. 이 파트에서는 벡터 수학을 다룬다. 게임을 하나 만들면서 흥미를 키운 다음 수학시간으로 넘어가다니! 사실 필자는 수포자라 수학의 수자만 들어도 식은땀을 흘린다. 이 파트 역시 수학이라는 글자는 공포였다.

 

다만 책에서는 완전 수학에 포커스가 맞춰진게 아니라 백터라는 개념이 무엇이고, 백터의 연산이 무엇을 의미하는지, 이해가 어려울 수 있는 부분은 예시를 통해서 이해를 도와준다. 게임에서 주로 사용되는 수학적인 부분을 다루다보니 오히려 흥미롭게 읽었다.

 

5부 : 2D 러너 게임 - 유니런

이 파트에서도 프로젝트를 구현한다. 이 파트는 3부, 4부에서 다뤘던 내용을 바탕으로, 2D에서 애니메이션을 구현하는 방법, 배경과 맵을 무한히 반복하는 방법, 소리를 출력하는 방법, 싱글톤 (프로그래밍 디자인) 패턴에 대해서 추가적으로 익힐 수 있다. 3부와 마찬가지로 난이도는 크게 높지 않은 편.

 

6부 : 탑다운 슈터 게임 - 좀비 서바이버

2권의 시작. 1권과 달리 2권에서 저자는 우리를 더 이상 입문자로 취급하지 않는듯 보인다. 전개도 상당히 빠르고 다소 다양한 주제와 문법을 다룬다. 하지만 그만큼 프로젝트의 품질이 상당히 높으면서도 친절한 설명은 여전하다. 다루는게 워낙 많아서 새로 배우는걸 나열할 필요가 있을까 싶다. 인상적인 것을 꼽으라면 네비게이션을 이용한 AI 구현과 포스트 프로세싱을 이용해 게임의 색감 및 분위기를 조절하는 것을 선택하겠다.

 

7부 : 네트워크 협동 게임 - 좀비 서바이버 멀티플레이어

필자는 네트워크 게임에 대해서 궁금하긴 했었지만 공부해 본 적이 한 번도 없다. 소켓 통신을 하겠지? 서버는 어떻게 구성할까? 중간에 연결이 끊어졌을 때 어떻게 처리할까? 연결이 불안정한 사용자의 움직임을 어떻게 처리할까? 이 파트에서 그러한 궁금증이 해결되길 기대했다.

 

이 파트에서는 게임 네트워크의 원리와 구조에 대해서 소개한다. 읽으면서 내가 가졌던 궁금증들도 어느정도 해소가 됐었고 내가 정말 단편적인 사고를 했었다는 것을 깨달을 수 있었다.

 

이후에는 포톤을 활용해서 네트워크 작업을 진행하는데 대부분 유니티 게임들은 네트워크 통신에 포톤을 사용하는 건지 궁금해졌다. 포톤에서 대부분의 작업을 해주는 것 같아 편리해 보이지만 네트워크 통신을 깊이 이해하기에 어려움이 있는 것 같다.



"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

 

 

 

와우, 책 받았을 때 첫 감상은 책이 박스로 오는 건 자격증 책만 있을 줄 알았는데.....

심지어 자격증 공부 책보다 친절하게 두권으로 분권 되어 있다... 와우.

 

근데 좀 책을 읽기 빠듯했다.. 많이 두껍기도 하고.. 1000페이지 정도 된다? 두껍쓰.

물론 부록을 빼면 줄어든다. 부록은 안드로이드랑 ios 배포 그 내용도 있다.



 

 



에센스라고 하기엔 1000p는 조금... 많은 게 아닐까 싶지만..

입문부터라고 생각하면 1000p에 모두 담아내기엔 오히려 부족했을 지도 모르겠다는 생각도 든다.

 

확실히 입문자, 초보자 입장에선 스크린샷이 많으면 좀 더 이해하기 편해지는 거 같다.( 그림과 다를 땐 동공지진이 일어나긴 하지만.)

 

C#을 모르는 입문자가 뒷걸음질 칠 이유가 없다. 책에서 C#의 기본 문법 내용이 포함되어 있다.



KakaoTalk_20220305_215807831.jpg

 

유니티에 관심을 처음 가진 것은 10여년 전 쯤이었던 것 같습니다.

움직이는 객체에 대한 프로그래밍에 관심이 많았는데, 유니티에는 훌륭한 물리엔진이 있어

어떻게 하면 이용할 수 있을까라고 생각했던 것 같아요.

공부를 해볼까라는 생각에 책을 한권 구입했지만, 제 책장에 꽂혀있다가 그대로 사라져갔습니다.

 

그리고 몇년 전부터 강화학습을 공부하던 중에 또다시 유니티의 ML-Agents에 관심을 가졌고,

조금씩 샘플을 돌려보기 시작했습니다.

 

유니티에 대해 기초지식이 없어서 고전(?) 중에 지인의 소개로 처음 '레트로의 유니티 게임프로그래밍 에센스'를 

접하게 되었습니다. 그리고 레트로님의 동영상 강의도 듣게 되었습니다.

 

한동안 ML-Agents를 잊고 지내다가 최근에 다시 보게 되었는데 마침 그때 '레트로의 유니티 게임프로그래밍 에센스'의

개정판 출간 소식을 듣게 되었고, 즉시 읽어보게 되었습니다.

 

이 책은 그냥 한마디로 이 책 내용대로 따라 하면 저절로 어느 순간 유니티가 친숙해 진다는 점이 장점인 것 같습니다.

 

게임 프로그래밍 전문가가 아니더라도 저처럼  강화학습 때문에 유니티의 환경을 배우고 싶은 사람에게도 정말 좋은

입문서가 되는 책입니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

최근 게임은 단순한 오락거리의 일종이 아닌 문화로 자리잡을 정도로 많은 성장과 시선의 변화가 있었습니다.
국내 대표적인 게임 개발툴로는 언리얼과 유니티가 있는데 그 중 유니티로 개발하는 비율이 높습니다.

 

그러나 게임 개발이라하면 무시무시한 수학 공식이 들어가거나 매우 어렵게 느껴지실거라 생각이 듭니다.
이번 글에서는 유니티라는 프로그램으로 게임을 개발하는 방법을 담은 도서를 소개해보도록 하겠습니다.

책의 구성 요소

1부: 유니티 준비하기

유니티 설치 및 유니티 동작 원리와 인터페이스 배우기

유니티 개발 환경 준비 및 간단한 프로젝트를 만들어봅니다. 컴포넌트 개념과 메시지, 브로드캐스팅 등 유니티의 기본적인 지식 및 소통법을 알아갑니다.

2부: C# 프로그래밍

C# 프로그래밍과 객체지향 쉽게 배우기

코딩 원리와 객체지향을 그림을 통해 쉽게 이해할 수 있도록 설명합니다. 실제 게임을 빗대어 설명하기에 어떤 경우에 사용하는지, 왜 사용하는지 보다 쉽게 이해하지 않을까 싶습니다.

3부: 탄막 슈팅 게임 - 닷지

3D 탄알 피하기 게임 만들기

키보드로 공을 조작하여 날아오는 탄알을 피하는 닷지 게임을 만들어봅니다. 시간, 물리엔진, 캐릭터 이동/회전, UGUI 등 기본적인 게임 개발에 대한 지식을 배웁니다.

4: 공간

공간, 속도, 회전을 통제하기 위한 선형대수 배우기

복잡한 공식이 아닌, 간단한 그림을 통해 유니티 개발에 사용되는 벡터 수학과 지역·전역 공간 그리고 회전에 사용되는 쿼터니언을 배우게 됩니다
마찬가지로 단순히 이론 공식을 암기하는 방식이 아닌, 실제 게임에 빗대어 설명하여 어떤 상황에 사용하면 되는지 깨닫고 사용할 수 있습니다.

5부: 2D 러너 게임 - 유니런

발판이 무한 램덤 생성되는 게임 만들기 (Like. 쿠키런)

쿠키런 같이 무한으로 낭떠러지를 피해 달리는 게임을 직접 만들어봅니다.
2D 애니메이션을 만들고 사용하며 오브젝트 풀링을 통해 배경, 장애물을 무한 반복 배치하는 기법 그리고 싱글톤 패턴에 대해 배웁니다.

6부: 탑다운 슈터 게임 - 좀비 서바이버

인공지능 좀비들에게 총을 쏘는 탑다운 슈터 게임 만들기

IK와 애니메이션 마스크를 구현하고 점수, UI 그리고 인공지능 적 소환 시스템을 만들어봅니다. 유니티 내비게이션 시스템을 사용하여인공지능을 구현하며, 레이캐스트로 탄알 충동을 구현합니다.

 

추가적으로 C# 인터페이스, 이벤트, 람다 표현식을 통해 대미지 처리 로직을 간결하게 줄이는 방법을 배우게 되며 시네머신과 포스트 프로세싱 사용한 영상미 구현법을 배웁니다.

7부: 네트워크 협동 게임 - 좀비 서바이버 멀티플레이어

싱글플레이어 전용 좀비 게임을 멀티플레이어 게임으로 포팅하기

멀티 게임을 구현하는데에 있어 기본적인 네트워킹 관련 상식·이론을 배웁니다.
별개의 서버 구축 없이, 포톤을 통해 로비와 매치메이킹 시스템 등을 구현하며 플레이어 간 동기화 절차와 클라이언트, 호스트, 로컬과 리모트, 조작 권한을 배웁니다

부록

어드레서블 에셋 시스템에 대한 전반적인 사용법과 문법과 iOS/AOS 빌드 그리고 원격 배포에 대해 배웁니다.

책의 난이도

개인적으로 느낀 난이도는 아무것도 모르는 비전공자도 충분히 이해할 수 있을 정도로 쉽게 풀이하여 설명하고 있습니다.
특히 어렵다고 느껴지는 부분들은 그림을 통해 풀이 설명을 하고 있어 이해하는데 도움을 주고 있습니다.

 

특히 보통의 도서에서는 앞에서는 열심히 설명하지만 조금만 깊게 들어가면 설명이 생략되고 코드 로직만 보여주는 경우가 있는데, 본 도서는 깊게 들어가더라도 끝까지 함수, 기능 하나 하나 풀어 설명하고 있어 처음 게임 개발을 접하더라도 이해할 수 있지 않을까 싶습니다.

 

다만 책의 페이지 수가 1,000 페이지를 넘어가기에 시작을 하는데에 있어 두려움을 느끼실 수 있겠지만, 천천히 한페이지 한페이지 읽어가며 프로젝트를 따라 만들다보면 자신의 지식·기술로 만들 수 있을거라 생각합니다.

유니티 버전

본 도서의 모든 예제와 그림은 2021.2 버전으로 제작되었지만 2022.1 버전에서도 호환이 되도록 특정 버전의 유니티에 의존하지 않도록 구성되었습니다.

 

만약 2022.1과 이후 버전에서 유니티 에디터 사용법이 달라지거나 확인하지 못한 호환성 문제가 발생한다면 예제 폴더에 포함된 UPGRADE_GUIDE.md 가이드문서를 제공하고 있기에 버전에 따른 문제는 없을 것으로 보입니다.

개인적인 후기

저는 현재 회사에서 안드로이드 개발을 하고 있지만 이전에는 게임 개발을 위주로 하였습니다.

 

게임메이커라는 엔진으로 개발하다, 유니티라는 엔진을 만나 개발을 시작하게 되었는데 그때 많은 도움을 받았던 분이 바로 본 도서를 집필하신 ‘레트로(이제민)’님 입니다. 아직도 고1 겨울방학 때 동신대학교에서 기숙사 생활을 하며 약 2개월 간 수업을 들었던 기억이 납니다.

 

예전 강의를 듣던 모습을 생각하며 본 도서를 읽어보았는데 당시보다 더 쉽고 재미있게 풀어 설명하신 것 같습니다.

 

무엇보다 나름대로 유니티 개발을 잘 다루고 있다 생각을 하였는데 미숙하거나 몰랐던 기술들(포스트프로세싱, 어드레서블 시스템 등)을 배우면서 단순히 초심자 내용만을 담은 것이 아닌 심화적인 내용도 담았다는 것을 느꼈습니다.

 

게임을 플레이하면서 직접 게임을 만들어보고 싶지만, 어떻게 시작을 해야할지 모르고 어렵게 느껴지셨다면 본 책을 추천해봅니다.

 

본 도서는 한빛미디어의 '나는 리뷰어다'를 통해 지원받은 도서입니다.

 

 



[소문난 명강의] 시리즈 중에서는 처음 읽는 책이다. 읽고 보니 왜 소문난 명강의인지 알겠다. [레트로의 유니티 게임 프로그래밍 에센스]는 jemin-i(제미니) 라고 하는 이제민 저자의 꾸준하게 인기있는 책이다. 유데미에서도 계속해서 인기있는 강의이다. 유데미의 The Complete Unity Game Development Course 강의와 더불어 꾸준히 인기있는 retr0의 유니티 (Unity C#) 게임 프로그래밍 에센스 | Udemy 강의이다.

이 책은 1000페이지가 넘는 분량때문에 520페이지 정도씩 2권으로 분권되어 있는 것을 한권으로 묶어서 6만원에 파는 책이다.

내용으로 봤을 때 1권은 C#의 기초와 다양한 기본 게임들이 있고 2권은 좀비 써바이버라고 하는 dota같은 시각을 갖고 있는 화면에 좀비들을 사냥하러 다니는 게임 위주로 구현하는 방법이 설명되어 있다. 마지막에는 네트워크 게임까지 구현할 수 있게 되어 있다.

예전에 unity책은 주로 코딩없이 배우는 책들을 봤는데 이책은 절반가까이 C# 코딩에 대해서 자세히 설명하고 있다. 아예 전혀 프로그래밍 언어 를 모르는 사람이 봐도 충분히 따라갈 수 있는 내용으로 구성이 되어 있다. 하지만 처음보는 용어가 많아서 하나씩 따라해보기 전에는 그 말이 그 말 같고 현재 어디를 읽고 있는 건지 멍할 수도 있다. 직접 실습을 해 보면 설치에서부터 메뉴 하나하나를 꼼꼼하게 잘 캡처한 책이라는 것을 느낄 수 있었다.

이 책을 통해 [소문난 명강의] 시리즈에 대한 좋은 인식을 갖게 되었고 재미있게 읽었기 때문에 유니티를 공부해보고 싶은 초심자들에게 추천해 주고 싶다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 



KakaoTalk_20220305_170424716.jpg

 

 어렸을 때는 스타크래프트나 바람의 나라를 하면서 나중에 커서 게임 개발자가 되야지

이랬었는데, 막상 대학에서는 전자과를 나와서 웹개발을 하고 있었습니다. 그렇게 일을

하다 보니 예전에 아무것도 모를 때 게임을 만들고 싶었던 기억이 떠오르면서 해보고 

싶은 마음에 책을 보게 되었습니다.

 

웹개발자이지만 게임은 문외한이라 '게임은 유니티로 개발한다.', '언어는 C#이다'라는

2가지 정도밖에 알지 못해 내가 할 수 있을까라는 생각이 많이 들었습니다만 막상 책을

훓어보니 하나하나 자세한 사진과 함께 하이라이트 표시까지 하나하나 되어 있어 초보라도

따라하는데 어렵지 않게 되어 있습니다. 

KakaoTalk_20220305_170424716_01.jpg

 

 

처음에는 유니티 회원가입부터 설치까지 입문자를 위해서 따라하기만 하면 되도록 되어 있었고,

유니티 인터페이스를 다뤄보며 기능들을 익힐 수 있게 되어 있습니다. 특히, 개인 개발자나

일정 매출 이하의 개발사에는 무료로 쓸 수 있다는 점에서 많은 개발자들이 유니티를 쓰는 

이유가 아닐까 하는 생각도 들었습니다. 

 

그리고 C#도 써보진 않아 조금 걱정이 됐지만, 책에서 소개되는 C#문법과 오브젝트를 다루는 

내용만으로도 실습 내용을 이해하는데 크게 어려움이 없었습니다. 게임을 만들다고 해서 엄청나게 

많은 코드들이 들어가있을꺼라고만 생각을 했는데, 유니티를 쓰니 그런 부분들이 많이 줄어들더라구요.

물론 책에 있는 예제만을 따라해봤을 때의 경우입니다^^b

 

아직 책의 내용이 많아 다 읽지는 못했지만 아래 내용들을 다루고 있습니다.

3D 탄알 피하는 게임, 발판이 무한 랜덤 생성되는 2D 러너 게임, 좀비들을 총으로 쏘는 탑다운 

슈터게임, 그리고 네트워크 게임까지 두루두루 다루고 있습니다. 

 

갈길이 아직 멀지만 따라해보면 재미있을꺼 같더라구요. 분량은 천페이지가 넘기 때문에 안에는 

2권으로 분권이 되어 있었습니다. 책이 두꺼우면 펴서 볼때도 불편했었는데 분권이 되어 있으니 좋더라구요.

그리고 안에 코드들도 하나씩 따라하다 보면 자연스럽게 자료구조나 알고리즘 공부에도 도움이 되는 것 같습니다. 

 

다들 이 책 상세페이지나 리뷰를 보고 계신다면 한 번쯤은 게임을 개발해보고 싶다고 생각하거나

하고 싶어서 들어오신 분들이라 생각됩니다. 다른 책보다 분량이 많은 만큼 한 권만으로도 여러 내용을

배울 수 있고, 게임개발이 처음이거나 C#을 몰라도 따라하다보면 자연스럽게 배울 수 있는 책인것 같아

추천 드립니다.

 

udemy 강좌: https://www.udemy.com/course/retr0-unity/

※ 유데미에 강좌도 있어서 책과 강좌를 같이 봐도 좋을꺼 같아요.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

레트로의 유니티 게임 프로그래밍 에센스 개정판을 보았습니다. 2019년에 나온 도서의 개정판이다.

유니티는 2D와 3D 그래픽을 지원하는 게임엔진입니다. 개인 사용자에는 무료로 제공되는 라이선스 부담 없이 개발을 진행할 수 있는 엔진입니다.

 

reviewer_202202_01.jpg

 

어렵게 게임을 만든 것이 아니라 Unity Hub Editor를 이용해서 오브젝트를 쉽게 생성할 수 있습니다. 도서는 유니티 2021에 맞추어 제작되었고 2022에도 대응이 된다고 한다. 책의 버전은 2021.2.0f1으로 설치되고 현재 설치는 2021.2.13.f1을 설치할 수 있다. 그래서 예제 소스를 불러오면 버전을 변경하는 화면을 볼 수 있었다. 진행에 어려움이 있을 수 있어 예제를 다운받을 수 있다. 예제는 바로 불러오면 저장된 결과를 바로 볼 수 있어 미리 경험을 할 수 있었다.

유니티를 이용하여 게임을 만들기 위해서는 프로그래밍이 필요합니다. 그 도구인 C#에 대해서도 책에서는 설명이 되어 있습니다. 책은 총 7부로 구성되어 있습니다.

1부 유니티 준비하기 2부 C# 프로그래밍 으로 유니티에 대해서 설치 및 사용 스크립트인 C# 에 대해서 설명을 해줍니다.

3부부터는 예제 게임을 바탕으로 다양한 기술에 관해서 설명을 해 줍니다. 실제 예제를 바탕으로 진행을 하므로 Unity에 대해서 단계적으로 알 수 있습니다.

 

reviewer_202202_02.jpg

 

두꺼운 도서는 보기 편리하게 미리 분책할 수 있게 제본이 되어 있어서 2권으로 나눠서 보기 합니다.

 

reviewer_202202_03.jpg

 

이제 막 게임에 관심을 가지고 개발을 준비하는 사람에게 책에서는 따라 하기 방식으로 하나하나 자세한 설명을 해 줍니다.

부록에서는 Android, IOS에 빌드하는 방법과 어드레서블 시스템에 관해서 설명해 줍니다. PC에서만 즐기는 것이 아니라 자신이 만든 게임을 다른 시스템에 빌드하여 배포하는 과정도 설명이 되어 있어 나중에 간단한 게임을 만들어 배포하는 연습도 가능할 듯합니다.

진행하다 부족한 부분은 예제파일을 통해서 확인이 가능하여 진도를 나가는 게 어려움이 없어 보입니다.

* 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.


#한빛미디어 #레트로의유니티게임프로그래밍에센스 책 개정판이 나왔다. 따끈따끈한 신간!
유니티를 처음 시작하는 사람들에게 유니티 엔진의 기본 기능부터 게임을 만들기 위해 필요한 지식까지 알기 쉽고 명료하게 전달한다. 그리고 배운 지식을 이용하여 실제 사례를 들어가며 설명하여 게임개발 과정을 누구나 쉽게 따라 할 수 있게 구성되어있다.
유니티는 물론 프로그래밍에 대한 지식이 없으는 입문자, 비전공자, 아티스트 등을 대상으로 쉽게 이해할 수 있는 순서로 구성되어있고 수학적내용은 전문적인 단어대신 비전공자가 이해할 수있도록 풀어쓴 예시를 사용하고 어려운 개념은 비유와 예시로 복잡한 서술은 그림으로 대체해서 실습과장을 놓치지않고 따라할 수있다.
프로그램에 대한 기본지식을 예제를 설명하는 중간중간에 잘 배치해서 많은 도움이 되었고 게임 개발할 때에 정말 중요하고 많이 사용하는 핵심기능 위주로 구현되어있어 간결하고 정확한 설명을 순차적으로 볼 수있어 매우 효율적으로 공부가 가능하다.
이 책은 장르별 게임을 완성하는 튜토리얼을 제공하는데 단순히 구현과 완성에 집중하는 것이 아니라 각 과정이 어떻게 맞물리고 각기능을 왜 사용하는지 설명해주고 수학, 코딩, 객체지향등의 기본기를 쉽게 가르쳐준다.
각 구현을 특정 프로젝트에서만 사용되는 것이 아니라 어느 프로젝트를 하더라도 사용할 수 있도록 자세하게 모든 부분을 설명하고 있고 사용된 그림들 또한 이해을 도울 수있어서 너무 보기 편했다.
단순히 따라 하기가 아니라 코드의 모든 부분을 이해하고 작동하는 모든 것을 온전히 내것으로 만들고 싶은 사람에게 추천한다.
예제 프로젝트를 따라하다보면 다른 프로젝트를 작업할 때도 어떤식으로 구현하면 좋을지 응용이 가능 할 것 같다.
저자는 그동안의 게임 개발 경험과 강의 경험을 토대로 반드시 필요한 핵심 기능들을 선택하였고 이들을 모두 적용할 수있는 자연스러운 게임 개발 커리큘럼을 만들었다. 이 책에 나오는 몇가지 게임을 따라 만들가 보면 출시 가능한 수준이 2D와 3D 게임을 직접 만들어 피씨나 스마트폰에서 플레이 할 수 있다. 그리고 이 것을 변형해가며 나만의 게임 개발을 시작할 수도 있을 것 같다.


이번 개정판은 크게 다음 수정사항이 추가됨.
- 유니티2021에 맞춰 내용을 갱신
- 스크립터블 에셋에 관한 내용 추가
- 어드레서블 시스템을 별도의 부록으로 다룸
빨리빨리 변하는 툴이 많은 IT책에 구매하고 그대로 읽지 못하는 경우가 있어 이점을 감안해 미래버전을 사용해도 문제없도록 최대한 신경을 쓴 저자의 노고가 보인다


이 책은 7부로 구성되어있다.
1부: 유니티 준비하기
2부: C#프로그래밍과 객체지향
3부: 탄막슈팅게임 닷지
4부: 공간, 속도, 회전을 통제하기위한 선형대수
5부: 2D러너게임 유니런
6부: 탑다운슈터게임 좀비서바이버
7부: 네트워크협동게임 좀비서바이버 멀티플레이어


☆ 입문자, 비전공자, 초보자에게 모두 추천한다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


 

 

 

 

 

 

 

'레트로의 유니티 게임 프로그래밍 에센스'

 

이 책은 총 2권으로 구성되어 있습니다. 1부와 2부로 구성되어 있으며 유니티와 코딩을 당장 이해하는데 가장 필수적인 요소들로 내용이 구성되어 있습니다. 

구성은 처음 유니티를 사용하는 초급자 또는 비전공자를 위한 유니티 툴 적응부터, C# 언어에 대한 기초적인 문법과 함께 실습예제들로 구성되어 있습니다.

책을 보면서 초급자가 어려울 수 있는 유니티 버전에 대한 충돌, 호환성 같은 문제를 최소화하기 위한 저자의 노력이 보이며, 버전 업그레이드 가이드까지 포함하고 있습니다. 사실 이런 친절은 쉽게 볼 수 있는 가이드인데 말이죠. 

또한, 예제 코드를 github와 한빛미디어 홈페이지에서 다운받을 수 있도록 하여, 쉽게 분석 및 확인도 가능합니다. 

책을 리뷰하면서 가장 좋은건 심도깊은 게임 예제가 있다는 것입니다. 3장 탄막 슈팅 게임, 5부 러너게임, 6부 탑다운 슈터게임, 7부 네트워크 협동 게임까지 솔직히 유니티와 C#만을 배워서 어떻게 활용해야 하나를 잘 모르는 분들에게 큰 도움이 됩니다.

특히 일반적인 Application과 다른 유니티의 프로젝트 구조를 손쉽게 더욱 이해할 수 있습니다. 특히 공간, 벡터등의 수학이 어떻게 게임에 녹아들어 있는지 쉽게 설명해줍니다. 그리고 각 게임은 주요한 기술이 다르기에 다양한 기술을 익히기 매우! 좋은 구조 입니다.

또 제가 좋았던 점은 한 페이지에 너무 많은 글이 많지 않았던 것입니다. (이미지 회전이 정상적으로 안되네요 ㅠㅠ) 그림 또한 이미지만 있는게 아니라 필요한 부분은 박스화 하여 쉽게 파악할 수 있도록 해 두었습니다. 글의 색감 또한 중요도, 주제 등에 따라 잘 구성해 놓은 부분이 너무 좋았습니다.

유니티를 처음 접하는 분들은 이 책을 무조건 추천드리고 싶습니다. 1000페이지가 넘는 책이지만 그만큼 필수적인 요소가 제대로 정리되어 있고, 잘 학습한다면 큰 역량을 향상 시킬 수 있을 것 같습니다.

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

게임 프로그래밍은 뭔가 재미있을 것 같으면서 너무 어려울 것 같았고, 관심은 있지만 시도해 보기 어려웠으나 서평단 기회를 통해 유니티 책을 제공받아 학습을 하게 되었다. 처음 책을 받았을 때 무려 1,000페이지가 넘는 분량으로 초급자가  끝까지 학습할 수 있을 책인가 하는 생각이 들었지만 친절한 설명과 많은 이미지로 구성돼있기 때문에 시간이 좀 투자한다면 크게 부담은 없어 보였다.

 

 

* 책 소개 및 구성

 

책은 이론 위주로 학습하기보다는 실습을 통해  연관된 스킬을 배우는 형식이다. 4가지의 게임을 직접 따라 만들어 보면서 게임 프로그래밍에 필요한 지식을 자연스럽게 익혀가는 과정이다. 쉬운 난이도부터 멀티플레이가 가능한 협동 게임까지 만들어 볼 수 있다. 

 

물론 게임을 만드는데 필요한 유니티에 대한 설명과 C# 언어, 프로그래밍, 게임에 필요한 수학 및 물리학적인 지식들도 중간에 별도의 챕터로 제공된다. 공부한다는 느낌보다 무언가 만들어보면서 자연스럽게 학습으로 이어지는 과정을 제공하고 있어 재미있게 보았다.  게임 개발에 관심을 가지고 있다면 누구나 이해할 수 있도록  배려한 부분이 많이 느껴졌다. 또한 비전공자, 초급자를 위한 책이지만 객체지향, 선형대수, 네트워크 등 고급과정도 다루고 있어 도움이 많이 되는 책이다.

 

마지막으로 내가 만든 게임을 안드로이드 또는 iOS 파일로 빌드하고 배포하는 방법을 부록으로 제공하고 있어 게임 제작의 아이디어, 콘텐츠 리소스가 있다면 나만의 게임을 많은 사람들에게 공개하고 즐길 수 있을 것 같다. 물론 아무리 초급자를 대상으로 했더라도 쉽지 않은 과정이고 게임은 기획, 사운드, 캐릭터, 스토리 등 광범위한 지식이 필요하기 때문에  어려운 일이긴 하지만 아무튼 이 책은 게임 게발에 흥미를 느끼거나 개발의 과정을 이해하는 데 도움을 주는 책인 것은 분명하다.

 

* 읽고 나서  

예제를 따라가면서 게임이 만들어지는 전체적인 과정은 이해할 수 있었다.

그러나 책의 실습대로 따라는 하지만 아직까지 3d 물체를 생성하고 다루는 것과 물리적인 법칙을 이해하는 것은 어렵게 느껴진다.  책에서 설명은 잘해주고 있지만 생각대로 잘 안되고 유니티에 익숙해지는 과정에는 많은 시간이 필요할 것 같다.

추가로 이 책으로 유니티를 학습하면서 게임 개발은 객체지향 등 프로그래밍 원리를 배우는데 가장 좋은 방법이라는 생각이 들었다. 그리고 일반적인 프로그래밍에 비해 뭔가 시각적인 것들도 다루고 있고 내가 작성한 코드가 하나의 게임으로 만들어지는 것을 보기 때문에 흥미를 끌기에도 좋아 보였다.

우선 이 책을 빠르게 학습하면서 게임 개발에 가졌던 호기심은 해결이 되었고, 책을 끝까지 읽게 되면 누구라도 첫 번째 제공된 예제 수준의 간단한 게임을 만들어 볼 수 있을 것 같다고 느껴졌다.

 단점은 에센스라고 하기에는 책이 너무 두껍고 내용이 방대한 점이다.

게임 개발자 또는 게임을 출시를 준비하지 않는 단순히 취미와 호기심으로 배워보고 싶거나 초급자에게는 이 점이 많은 부담이 될 것 같다. 게다가 전혀 지식이 없다면 이해하기 어려운 부분들도 많이 있어 완전 초보자에게는 어려울 것 같다. 좀 더 가볍고 흥미 위주의 책이었으면 좋을 것 같다는 생각이 들었다.

 

 

이 책은 입문자와 비전공자를 배려합니다. 어느 정도 읽으면 기본기가 쌓이면서 C#뿐만 아니라 다른 개발 언어도 학습하고 싶어질 거예요. 개발 지식이 없어도 Unity(유니티)에 관심이 있다면 도전하세요.

한빛미디어에서 제공받는 책으로 해당 리뷰를 작성하였습니다.

책표지

TL;DR

  • 1~2부 내용은 ‘꼭’ 읽어보시고(설치 및 기초적인 내용은 가볍게 실습을 진행하시길 권함), 5부인 ‘유니런’을 먼저 진행하길 권장, 왜냐하면 3부인 ‘탄막 슈팅’ 게임 보다 난이도 및 실습 분량이 적절하다고 판단
  • 단, 기존에 Unreal 등을 사용하셨던 분들은 3부인 ‘탄만 슈팅’과 6부인 ‘좀비 서바이버’를 진행하시면 난이도가 적절할 것으로 예상
  • C# 등과 같이 개발이 처음이신 분들은 이 책에 소개된 C#과 함께 MS에서 제공하는 학습 사이트인 Learn C#을 도움 받을 수 있고, 교재에 제시된 C#의 내용이 너무 어렵지 않으니 Unity를 먼저 접한다는 생각으로 진행하길 권함
  • 개인적으로 M1 기반 MacBook Air를 사용하고 있으며 해당 기기로 교재의 내용을 진행, M1기반 macOS의 Unity는 ARM64 버전으로 진행되는데 교재의 모든 과정을 별다른 어려움 없이 진행할 수 있기 때문에 macOS 사용자라도 너무 걱정하지 않아도 됨

1

주변에서 ‘메타버스’에 대해서 여러가지 이야기를 하면, 시작은 메타버스였고 그 끝은 ‘Unity’로 끝났다. 그래서 이번에 유니티 책을 리뷰하면서 매우 즐거웠다. 무엇보다 책을 받고 좋았던 점은 교재가 2권으로 분권되어 있다는 점이다.

2권으로 분권되어 있다

1권은 초급자를 위해서 구성되어 있었고, 2권은 중급자를 위한 책이다. 책을 받자 말자 2권에 있는 멀티플레이어 게임을 먼저 진행하고 싶었지만, 유니티를 사용하는 방법을 전혀 몰라서 유니티의 구성 및 구조를 익히기 위해서 1권부터 차근차근 교재를 진행했다.

교재를 진행하면서 중반 정도 진행하면서 느낀점은 2D 기반의 러너 게임이 앞선 3D 기반의 슈팅 게임에 비해서 실습이 훨씬 쉽게 다가왔다. 3D 슈팅 게임의 경우 유니티 카메라를 잘 사용하지 못해서 그런지 난이도가 좀 있다고 느꼈는데, 2D 게임의 생각보다 쉽게 진행되었다.

2D 게임

이 책을 읽는 분들 중에서 저와 같이 C#을 처음 접하거나, 이런 형태의 개발 도구가 익숙하지 않으신 분들의 경우 3D로 진행되는 게임보다는 2D로 진행되는 예제를 먼저 진행해서 개발 도구가 먼저 익숙해지면 향후 진행될 예제를 쉽게 접할 수 있다.

2

대망의 7부 ‘좀비 서바이버 멀티플레이어’를 진행하게 되었다. 6부 ‘좀비 서바이버’를 진행하면서 4부 ‘공간’을 2~3번 정도 반복했던 것 같다. 사실 7부의 경우 Photon을 적용하는 과정만 쉽게 해결할 수 있다면 실습은 전혀 무리가 없을 정도로 잘 설명하고 있다. 반면에 6부 ‘좀비 서바이버’를 진행할 때 오브젝트를 배치하고 움직이는게 쉽지 않아서 시행착오가 많았다. 하지만 멀티 플레이는 내가 생각했던 것 보다 너무 쉽게 진행되어서 약간 놀라웠다.

멀티는 잘 된다!

교재가 생각보다 세세한 것을 잘 설명하고 있기 때문에 크게 어렵진 않지만, 유니티를 잘 다루지 못하면 교재의 설명이 별 소용이 없기 때문에 유니티라는 도구를 익숙하게 진행하는데 조금 노력을 기울이면 좋을 듯 하다. 그리고 C#의 경우 교재에서 코드 설명을 과도하게 해주고 있고, 예제로 제공하는 파일에도 주석으로 주요 코드는 전부 설명하고 있어서 C#은 큰 문제가 아니였다.

세부적인 사항이 잘 설명되어있다!

3

18장/19장의 경우 ‘멀티플레이어’에 관한 내용을 다루고 있다. 주제가 쉽진 않지만 많은 사람들에게 관심이 있을 것으로 예상된다. 무엇보다 중급자의 경우 특별히 관심이 있을 것으로 예상되는데, 18장/19장이 다른 챕터에 비해서 짧게 소개되어 있다. 책이 초급자를 위주로 배려하기 때문에 중급자를 위한 내용을 충분히 다르긴 쉽지 않지만, 네트워크와 관련된 기능은 많은 사람들이 관심있을 주제라고 생각하는데 분량이 아쉽다. 그리고 모바일에 특화된 내용은 많이 다루고 있지 않다는 점도 약간의 아쉬움을 준다.

P.S 한빛미디어에 ‘문의’ 메일로 모바일과 네트워크를 다루는 중급자 교재를 많이 문의하시면 되지 않을까요?!

 

게임을 좋아하는 분이라면 누구든 한번쯤 "나도 게임을 만들어 보고 싶어" 같은 생각을 해 봤을 거 같습니다. 하지만 아무리 단순한 게임이라도 깊이 있는 컴퓨터 지식과 프로그래밍 경험 없이는 만들 엄두조차 내기 힘들며, 만들기 위해 공부하려 해도 무엇부터, 어디까지 배워야 할지 막막해서 포기한 분들도 많을 겁니다. 언리얼, 유니티 엔진 같은 창작에 보다 집중할 수 있게 해주는 저작 도구들이 활발히 쓰이고 있음에도 그 장벽은 만만치 않은 것이, 게임 엔진 사용법 뿐만 아니라 프로그래밍, 컴퓨터 그래픽스, 수학과 물리 같이 광범위한 분야의 지식이 필요하다 보니 어디서부터 어떻게 시작해야 할지 막막하기 때문입니다.

 

그러다 보니, 게임 개발 입문 서적의 경우 "이 책만 따라하면 초보자라도 게임을 만들 수 있다"고 하며 한권의 책에서 게임 개발에 필요한 다양한 범주의 내용을 모두 다루는 경우가 많습니다. 게임 개발 입문서 목적의 서적들은 보통 게임 개발에 필요한 기반 지식을 전부 다뤄야 하다 보니 수박 겉핥기 식 설명이 되는 경우도 많고, 무책임하게 설명도 없이 그냥 이런 게 있다라고 만 언급하고 넘어가서 책을 읽어도 전혀 도움이 되지 않아 아쉬운 경우가 종종 있는데, 이 책은 설명의 깊이와 다루는 범위 사이의 밸런스를 절묘하게 맞추면서 복잡하지 않게 단순한 설명으로 최대한 필요한 개념을 설명하려고 노력한 느낌을 받을 수 있습니다. 보통 책과는 좀 다른 특이한 제본이 눈에 띄는데, 전체 1000페이지가 넘는 두껍고 무거운 책이지만 2권으로 분권이 가능한 특이한 제본 덕분에 편하게 들고 읽을 수 있었습니다. 읽는 사람을 배려하는 제본 만큼이나 책의 내용도 입문자를 타겟으로 했다는 목적성이 강하게 느껴지는데, 반복되더라도 최대한 풀어서 단계를 설명하여 따라오기 쉽게 내용이 구성되어 있으며 초보자가 쉽게 하는 실수나 예상되는 오류도 꼼꼼히 다루고 있어 입문자를 위한 책이란 것을 강하게 느낄 수 있었습니다.

 

아무런 관련 지식이나 경험이 없는 분이 이 책을 한번 읽고 바로 게임 개발 기법을 터득할 수 있으리라고 까진 생각되지 않지만, 게임 개발을 하고 싶은데 뭘 해야 하는 지 모르겠다는 분이나 유니티 엔진을 처음 접하게 되어 유니티 입문서가 필요한 분이라면 이 책이 아주 좋은 시작점과 길잡이가 되어 주리라 생각됩니다. 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

 

 

 

 

개인적으로 언리얼 엔진과 C++를 위주로 공부해오고 있었는데, 좋은 기회가 생겨서 다시 입문한다는 생각으로 아래의 책을 접하게 되었다.

 

해당 책은 "개정판"으로 이전 본판은 2019년 2월 20일에 출판했었고, 

http://www.yes24.com/Product/Goods/69320872

 

 

 

 

개정판 이전의 책 자체도 책에대한 평가가 굉장히 좋았다.

 

 

외부

최근에 2022년 2월에 개정판으로 다시 출판하였다.

 

개정판 이전의 책을 읽어보진 않아서 큰 차이를 구분 나열할순 없지만, 아마도 게임 엔진의 특성상 1년1년이 지날때마다 엔진이 업데이트 되면서 달라지는 내용들에 대한 보완이 되어준것같다. 초판본(?) 이후 3년정도가 지났으니 크지 않더라도 꽤나 이전 책과 차이가 있을 수 있다.

 

 

 

개정판 책 소개 내용 중 일부&amp;amp;amp;amp;amp;nbsp;http://www.yes24.com/Product/Goods/69320872

 

 

책의 장점 중 하나로(?) 1000페이지 가량 되어있는데, 두권으로 나눠서 출간한다는 것이다.

1000페이지 가량의 서적을 가방에 넣고 다닐생각하면 아찔하다(?)

 

내부

그렇게 차근차근 책을 읽어 보았다.

1장

책은 기본적으로 유니티 엔진에 자체에 대한 설명을 1장에서 주로 다루어준다.

나는 몇년전에만 잠깐만 가볍게 다루었었고, 그 뒤론 오랜시간 실행시켜본적이 없었다. 그런데 이 부분은 내가 게임 엔진을 모르는 상태에서 본다면 꽤나 유용할듯 싶다.

 

2장

그다음 2장에서는 유니티 엔진에서 주로 사용하는 C#언어에 대한 설명을 해준다. 물론 C#언어 자체로는 여기로는 부족하기도하고 별도로 많은 시간을 들여야 하지만, 유니티에서 사용하는 C#에 대한 입문하는 차원에서는 나쁘지 않다고 생각한다.

 

그 중에서도 게임 프로그램 구조에서  사용하는 언어에대한 설명으로 귀여운(?) 그림들과 같이 나열되어 있으니 이해가 더 쉬울것 같다.

몬스터의 상속구조 설명 중 일부

게임 엔진에 대한 책들을 몇권 그래도 봤었는데 내용 설명이라고 하면 프로그래밍 코드와 줄만 나열되있을수 있는데, 입문하는 차원에서 이렇게 쉬운 설명은 굉장히 좋을 것같다. 그래서 이렇게 책이 두꺼운가? 싶기도 했다.

 

그외에 그림말고로 텍스트들을 묶어서 보기쉽게  설명해주려고 한 흔적들이 보였다.

 

그리고 크게 게임 수학에 관한 기본적인 설명을 해준다. 방향,크기, 회전에 대한 지식은 게임을 만들어가는데에 필수적이기도하고, 물론 이 짧은 챕터로 끝낼순 없지만 입문하기엔 좋은 내용들이다.

그리고 총 4개의 간단한 미니게임프로젝트의 개발을 처음부터 완성하기까지의 과정을 친절하게 안내해주고 있다.

책이 2권으로 나눠져 있는데 1권에는 미니게임 3개와 전반적인 설명을 해주고, 2권에서 좀비 서바이벌을 만들며 나아가 멀티플레이 이론과 구현에대한 설명을 해주고 있고,

그외에 모바일게임으로 개발하는 사람들을 위해 안드로이드/IOS 휴대폰에 대한 설정에 관한 설명도 보여준다.

 이런 정보를 당장 알고 시작하는것과 모르고 찾으면서 시작하는건 다르다고 생각한다. 

 

 

장점은 해당 서적은 C#입문 + 유니티 엔진입문으로는 굉장히 좋은 책이라고 생각한다. 그리고 처음 게임 엔진을 이용한 게임개발을 시작할때, 어떤 게임을 만들어야하는지에 대한 게임 기획을 직접하는것도 쉽지 않으므로, 해당 책에서 제공하는 3개의 미니 게임 프로젝트(탄막슈팅/2D러너/탑 다운 슈터(+멀티플레이)) 로 그대로 따라하는 과정 자체가 나중에 본인이 만들고 싶은 게임에 대한 좋은 기반이 될것이라고 생각한다. 유니티엔진에 대한 입문용으로 생각한다면? 이 책은 굉장히 좋다고 생각하고, 더 나아가 좋은 게임개발자가 되기위해서는 이책으로 시작해서 각각의 챕터들(C#, 유니티엔진,게임수학 등)에 대한 깊숙한 공부를 별도로 더 해야 할것이다

 

단점으로 처음엔 백과 사전같은(?) 두꺼운 책의 무게라고 생각했지만 분권이 된다는 점으로 크게 단점은 없다고 생각한다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


저자: 이제민

 

#책소개

독자분들로부터 수많은 찬사를 받았던 유니티 대표 도서 『소문난 명강의:레트로의 유니티 게임 프로그래밍 에센스』가 개정판으로 돌아왔습니다!

이 책은 기본을 빠르게 익히고 나서 게임을 직접 만들며 필요한 기능을 알아가는 입문 + 활용서로서 여러분의 시간을 아껴줍니다. C#을 몰라도, 유니티 엔진을 몰라도 게임을 만들 수 있습니다. C# 입문 + 유니티 에디터 + 실전 게임 개발을 한 권으로 전달하니까요. 또한 아주 낮은 눈높이로 설명하고 차츰차츰 높은 난도의 게임을 완성해나가기 때문에 초보자가 책을 완독하는 데 무리가 없습니다.

이 책에서 제공하는 4가지 게임을 만들다 보면 유니티로 게임을 개발하는 데 필요한 실무 능력을 제대로 갖추게 될 겁니다.

라고 YES24가 소개하더이다.

 

 


 

 

# 이 책의 특징

 

1. 원리 중심이다.

~~는 뭐다라고 알려주고 그 이후 어떤 원리에 의해서 이렇게 되는지 알려준다.

예를 들면 컴포넌트 패턴이 어떻게 작동하며, 브로드캐스팅이 무슨 의미를 가지는지 등.

 

 

2. 예제 게임의 퀄리티가 충실함

예제 게임에서 배울 것이 많다. 특히 궁금한 것들에 대한 해답을 준다.

 

 

3. 중간 중간 실무에 쓸 법한 원리나 지식을 알려줌

어차피 실무에서는.. 쓸만한 것이 다를지 모르나.. 그래도 기초를 알려주기에 좋다고 생각한다.

정말 기초는 이 책으로 다 뗄 수 있다고 생각한다.

아니 나도 몰랐던 기초를 배울 수 있다고 생각한다.

 

 

 


 

#후기

 

이 책은 충실하다.다만 이 책을 끝낸 것이 게임 개발자로서의 시작이지 완성이라고 할 수 없다.책의 마지막으로 공부법을 소개시켜줬으면 어떨까 싶다.

 

사실 나도 실무에 있지만서도.. 책에서 정보를 찾는 일은 드물다.모든 것이 인터넷에 있다. 하지만 그걸 모른다. 찾는 방법을 몰라서 못찾을 수도 있다.찾는 방법을 몰라서 포기하기엔 너무 아깝다.이 책을 시작으로 이제는 나만의 책을 쓴다고 생각하고 나아가야겠다.

 

 

 


 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 


 

유니티 게임프로그래밍 에센스가 개정판이 나왔습니다.

이전과 마찬가지로 1, 2권으로 나누어져 1권에서 1~5부까지, 2권에 6,7부가 수록되어있습니다.

책은 1, 2권 합쳐 1000페이지가 넘어갑니다.

 

uni1.jpg

 

 

1부- 유니티 준비하기

유니티허브, 유니티 에디터 등을 설치하고 프로젝트를 생성하는 방법을 설명하고 있습니다. 전반적으로 따라하기 쉽게 사진과 그림등이 많이 실려있습니다. 유니티 프로그램 내의 기초적인 기능등을 설명하고 있습니다.

 

uni2.jpg

 

2부-C#프로그래밍

 

유니티는 스크립트 언어로 C#을 사용합니다. 프로그래밍을 접해본 적이 없는 초보자도 기본적인 C#문법을 배울수 있게 되어있습니다.

코딩의 기본 규칙과 문법( 변수, 제어문, 연산자, 반복문), 배열을 다룹니다. 그리고 심화하여 객체지향을 다룹니다. 클래스와 오브젝트를 게임내에 생성하고 다루는 것을 보여줍니다. 초심자에게는 클래스와 오브젝트 그리고 객체지향이라는 개념이 많이 생소하게 느껴질 것입니다.

 

uni3.jpg

 

uni4.jpg

3부-탄막슈팅게임 : 닷지

 

앞선 1, 2부에서 코딩과 유니티 프로그램에 대해 기본적인 것을 배웠습니다. 이제 간단한 게임을 만듭니다. 플레이어가 스테이지 위에서 탄알을 피하며 버티는 게임입니다. 스테이지 부터 플레이어 생성, 그리고 탄알, 점수까지 유니티를 본격적으로 다루며 설명합니다. 입력을 받아 플레이어가 움직임을 가져가는 것 부터 플레이어의 사망과 탄알과 플레이어의 충돌, 탄알의 생성등 게임의 기본이 되는 것들을 설명합니다. 다 만들어진 게임은 쉬워 보이나 보기에만 쉬울뿐 꽤 어렵습니다.

 

 

uni5.jpg

 

uni6.jpg

 

4부- 공간

 

게임내 공간에서 오브젝트는 위치와 회전을 가집니다. 2차원의 평면(모니터)속에서 3차원의 공간감을 표현하기 위해서는 기초적인 수학적 지식이 필요합니다. 4부에서는 벡터를 다루는 법을 배웁니다. 간단한 선형대수를 배운다고 생각하시면 됩니다.(하지만 선형대수는 어렵습니다.) 벡터의 내적과 외적, 그리고 유니티에서 벡터를 다루는 법을 배웁니다. 또한 회전을 나타내는 쿼터니언도 배웁니다. 3D벡터로만 회전을 다룬다면 문제가 생길 수도 있습니다.

 

uni7.jpg

 

uni8.jpg

 

5부- 2D러너 게임: 유니런

 

2D게임을 만듭니다. 본격적으로 케릭터의 움직임을 다룹니다.플레이어가 달리고 뛰고,게임오버 되는 상태를 애니메이터 컨트롤러를 통해 구현합니다. 또한 배경이되는 오브젝트들의 반복과 재배치를 어떻게 동작, 구현하는지 가르쳐줍니다. 완성된 게임은 이전 탄막게임과 마찬가지로 쉬워보이지만 꽤나 어렵습니다.

 

uni9.jpg

 

6부- 탑다운슈터: 좀비서바이버

 

이전의 2D게임에서 이제는 3D 넘어왔다. 이 부분에서는 주로 3D케릭터의 애니메이션을 어떻게 다루는지 , 광원은 어떻게 처리하는지, 카메라의 움직임은 어떻게 가져가야하는지, 총을 발사하여 적에게 닿았을때 혹은 내가 적에게 공격을 당했을때 어떻게 그것을 알아차리고 처리할 것인지,플레이어의 체력을 나타내는 슬라이더 및 U.I, 그리고 적의 A.I와내비게이션 시스템은 어떻게 동작하는지, 그리고 객체지향의 특징인 다형성 등을 다룬다. 많은 양의 C#스크립트를 다루지만 하나하나, 차근차근 많은 설명과 주석이 달려있어 이해하기 쉽게 되어있다.

완성한 좀비 서바이버 게임도 역시 이전의 2D 유니런 게임과 마찬가지로 쉬워보였지만 어렵습니다.

 

uni10.jpg

 

uni11.jpg

 

7부-네트워크 협동 게임: 좀비 서바이버 멀티플레이어

 

이 부분에서는 이전의 좀비 서바이버 게임에 멀티플레이어 요소를 넣습니다. 그러기 위해서 멀티플레이어 게임을 개발하는 데 필요한 네트워크 이론과 개념을 설명합니다. 로컬과 리모트의 개념, 게임 서버의 종류, 네트워크 권한등을 배웁니다. 그리고 멀티플레이 게임으로 구현하기 위해 포톤PUN이라는 솔루션을 사용하는 방법을 배웁니다. 또한 로비를 만들고 플레이어들을 생성하고, 좀비를 네트워크용으로 바꾸는 것들이 있습니다.

 

uni12.jpg

 

uni13.jpg

 

부록 A-안드로이드 빌드

 

부록 B- IOS 빌드

부록 C- 어드레서블 시스템

이번 개정판에 추가된 내용중에 하나가 부록 C 어드레서블 시스템에 대한 것입니다. 에셋과 컨텐츠에 주소를 부여하여 패키지로 묶고 관리하기 쉽게 만드는 것 같습니다. 다시 한번 정독을 해야할 부분입니다.

레트로의 유니티 게임 프로그래밍 에센스는 게임 프로그래밍 학원에서 교재로도 쓰이는 만큼 유명하고, 내용도 좋은 책입니다. 그 책의 개정판이 나왔습니다. 새로운 유니티 버전에 호환되어나왔습니다. 전체적으로 게임개발에 관해 기본이 되는 내용들과 유니티 프로그램 사용법을 충실하게 담고 있습니다.유니티 게임 개발에 입문을 하려는 독자가 있다면 레트로의 유니티 게임 프로그래밍 에센스 개정판으로 시작해보시길 추천합니다. 좋은 책입니다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

레트로의 유니티 게임 프로그래밍 에센스”  2권으로 새롭게 개정판이 나왔다

 

막연했던 유니티가 정말 쉽게 느껴지게 만든다

이 책의 가장 좋은점은 유니티의 기능 구현에만 집중하지않고그래픽 작업에는 익숙하지만 유니티와 연결하는 C# 프로그래밍에는 서툰경우가 대부분일것인데이부분을 충분히 고려하여 C#의 기초부터 활용까지 많은 페이지를 할애하여유니티로 그래픽 작업까지만 하고 조금의 동작을 확확인하는 것 거치지않도록하고있다.

 

C#의 기본 변수와 명령에 대한 자세한 설명이 곁들여져완전한 게임을 만들고 이해하는데 어려움이 없도록 도와주고 있다.

 

목차를 보면 아래와 같이 유니티 환경설정부터, C#, 4가지 게임 유형까지의 제작 구현 방법을 잘 보여주고있다.

또한 마지막으로는 안드로이드 폰이나 IOS환경의 폰 등에서도 개발이 가능하도록 환경을 설정하는 방법을 제공하고있다.


 

2022-02-23 15 52 56.png

 

유니티 이해와 기본 조작방법

2022-02-23 16 30 27.png

 

C#의 기본 문법

2022-02-23 16 30 36.png

 

 

2022-02-23 16 29 43.png

 

C#과 유니티 제어 방법

2022-02-23 16 30 43.png

 

제작하게될 게임 4가지

2022-02-23 16 30 53.png

 

2022-02-23 16 29 56.png

 

안드로이드 개발 환경 구축

 

2022-02-23 16 31 16.png

 

IOS 개발 환경 구축

2022-02-23 16 31 23.png

 

 

지금까지 본 유니티 관련 서적중에서 가장 효율적인 내용을 담고있다고 판단되어,

유니티나 게임 제작에 관심있다면 적극 추천한다.

 

 

 

 

이 책의 저자는 수년간 게임 개발 전문 트레이너로 활발히 활동하고 있으며 짜임새 있는 구성과 저자의 인지도로 인해 개정판 이전 서적도 매우 많은 인기를 얻었었던 것으로 알고 있으며 저자의 강의는 국내 뿐만아니라 해외에서도 많은 인기를 얻어 베스트셀러 강의가 되었다

 

저자의 강의 인기와 이 책의 개정판을 간절히 바라던 수많은 입문자들도 이번 개정판을 매우 반기고 있으며 현재 검색 해본 결과 

이미 이 책이 유니티 게임 개발 부분 베스트 셀러 인 것이 확인되고 있다

저자의 책은 대학교에서도 게임 개발 과정에 교재로 사용할만큼 짜임새 있게 잘 구성이 되어있다

 

이 책의 기초 부분을 완벽히 공부하고 책에서 소개하고 있는 프로젝트 네개에 대한 개발까지 

모두 완벽히 수행한다면 뿌듯한 성취감과 함께 게임 개발의 기본기를 확실히 갖춘 게임 개발자가 될 수있을 것이다

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 상품명 :
소문난 명강의 : 레트로의 유니티 게임 프로그래밍 에센스(개정판)
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

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

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

오탈자 등록

닫기
* 도서명 :
소문난 명강의 : 레트로의 유니티 게임 프로그래밍 에센스(개정판)
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
소문난 명강의 : 레트로의 유니티 게임 프로그래밍 에센스(개정판)
구입처*
구입일*
부가기호*
부가기호 안내

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

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

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

닫기

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

자료실

최근 본 상품1