이 책은 유니티 설치부터 2D, 3D 게임 제작까지 다룬다. 초보자가 게임 개발에 필요한 사용법을 습득하는 데 집중하도록 설치, 설정, 에디터 사용법, 프로젝트와 씬 구성, 오브젝트 설정 등을 쉽게 설명한다. 유니티 기본기를 익히며 3D 공 굴리기 게임과 2D 대포 게임을 만들고 유니티 UI 시스템을 이용해 게임 UI도 제작한다. 마지막으로 3D 장애물 달리기 게임을 만들어 모바일용 게임으로 손쉽게 변경하는 방법도 살펴본다. 이 책과 함께라면 유니티 초보자도 게임을 만들 수 있다.
저자소개
저자
아라카와 다쿠야
유니티 테크놀로지스 재팬 소속. 유니티 트레이너로서 기업에서 유니티를 도입하는 데 필요한 강의를 하거나 유니티를 사용한 콘텐츠 개발 등을 컨설팅한다. 또한 대학이나 전문학교에 유니티를 도입하기 위한 지원 업무도 하고 있다.
저자
아사노 유이치
현역 게임 엔지니어. 과거에는 주로 콘솔 게임 개발을 담당하였으나 유니티를 접하고 나서는 스마트폰 게임 개발자로 활약 중이다. 좋아하는 동물은 병아리와 닭이다.
역자
윤준
숭실대학교 미디어학부를 졸업하고 동 대학원 모바일 랩에서 미디어공학을 전공했다. 프런트엔드 엔지니어로 활동하고 있으며 한빛미디어에서 『초보자를 위한 언리얼 엔진 4 입문』, 『초보자를 위한 유니티 입문(개정판)』 등을 번역했다.
목차
CHAPTER 1 유니티를 시작하기 위한 준비
_1.1 유니티로 할 수 있는 것
_1.2 유니티 설치
CHAPTER 2 인터페이스와 사용 방법
_2.1 유니티 에디터의 화면 구성
_2.2 기본적인 조작 방법
CHAPTER 3 유니티 사용하기
_3.1 프로젝트 만들기
_3.2 바닥과 벽 만들기
_3.3 경사면 만들기
_3.4 공 만들기
_3.5 중력 설정하기
_3.6 게임 발전시키기
CHAPTER 4 2D 게임 만들기
_4.1 프로젝트 만들기
_4.2 스프라이트 나누기
_4.3 스테이지 만들기
_4.4 플레이어 배치하기
_4.5 플레이어 제어하기
_4.6 포탄 발사하기
_4.7 병아리 구슬 만들기
_4.8 기능 개선하기
CHAPTER 5 게임 UI 만들기
_5.1 유니티의 UI 시스템
_5.2 주요 UI 오브젝트
_5.3 버튼 클릭 처리하기
_5.4 타이틀 화면 만들기
CHAPTER 6 3D 게임 만들기
_6.1 프로젝트 만들기
_6.2 게임에 필요한 리소스 불러오기
_6.3 캐릭터 만들기
_6.4 플레이어를 따라 카메라 이동하기
_6.5 스테이지 만들기
_6.6 장애물 설치하기
_6.7 스테이지에 텍스처 설정하기
_6.8 라이트 추가하기
_6.9 플레이어 추락 처리하기
_6.10 스테이지의 목표 지점 만들기
_6.11 타이머 기능 만들기
_6.12 결과 화면 만들기
_6.13 사운드 적용하기
CHAPTER 7 스마트폰에서 실행하기
_7.1 스마트폰용 프로젝트 만들기
_7.2 스마트폰 입력 처리하기
_7.3 스마트폰에서 실행하기
7. 관련 도서
- <소문난 명강의> 레트로의 유니티 게임 프로그래밍 에센스(개정판) (9791162245149)
- 만들면서 배우는 픽셀 아트 (9791162243459)
- 게임 프로그래밍 패턴 (9788968482878)
출판사리뷰
★이 책의 특징과 구성
유니티를 가르치고 유니티로 개발한 저자들의 노하우가 담긴 책입니다. 입문자가 궁금해하고 어려워하는 부분을 직접 게임을 만들어보며 쉽게 익힐 수 있도록 구성했습니다. 초보자 눈높이에 맞는 예제를 사용했기 때문에 각 장을 읽기만 해도 유니티로 게임을 만들 수 있습니다.
- 1장 유니티 주변 지식과 설치 방법 그리고 유니티 허브
- 2장 유니티 에디터 화면의 각 기능과 사용 방법
- 3장 3D 게임을 만들며 사용해보는 유니티
- 4장 2D 게임을 만들면서 익히는 유니티 기본 기능
- 5장 유니티의 UI 시스템으로 게임 UI 만들기
- 6장 3D 게임을 만들며 익히는 리소스 사용 방법
- 7장 스마트폰용 게임을 만드는 방법
★예제 소개
3장_3D 공 굴리기 게임
유니티는 화면에 리소스를 배치하고 물리 동작을 설정하는 것만으로도 간단한 3D 게임을 만들 수 있습니다. 공이 도착할 바닥과 벽, 굴러갈 경사면 등을 만들고 카메라를 설정해 공 굴리기 게임을 만들어봅니다.
4장_2D 대포 게임
화면 왼쪽에서 굴러 내려오는 병아리 구슬을 대포로 맞히는 2D 대포 게임을 만들어봅니다.
5장_게임 UI
유니티의 UI(유저 인터페이스) 시스템을 이용해서 텍스트와 버튼 등을 만들어봅니다. 시작 버튼으로 타이틀 화면에서 게임의 메인 화면으로 이동하는 예제를 만듭니다.
6장_3D 장애물 달리기 게임
유니티 에셋을 활용해 3D 장애물 달리기 게임을 만들어봅니다. 캐릭터, 스테이지, 장애물을 만들고 카메라, 라이트, 사운드 등을 적용합니다.
7장_스마트폰용 게임
3D 장애물 달리기 게임을 스마트폰에서 실행할 수 있도록 변경합니다. 스마트폰에서의 입력 처리 방법, 실행 시 기기 부담을 줄이는 방법, 아이폰/안드로이드폰에서 실행하는 방법 등을 알아봅니다.
★이 책의 유니티 버전에 대하여
이 책의 모든 예제는 유니티 엔진 2022.2 버전을 기반 작성하고 동작 테스트를 완료했습니다.
개정 2판 1쇄로 발행되어 최신 버전의 유니티에 맞추어져 있습니다. 이는 독자가 최신 버전에서 작동되는 예제를 통해 학습할 수 있게 해줍니다.
이 책에는 단순한 예제뿐만 아니라 깊이 있는 내용도 포함되어 있어, 독자가 무엇을 더 파고들 수 있는지 가이드 역할을 합니다. 예제는 비교적 간단한 C# 코드로 이루어져 있어, 코딩 경험이 있는 사람에게는 좋겠지만, 코딩 경험이 없더라도 이해하고 따라가기 좋습니다.
Unity와 Unreal 중에서 C#에 익숙하다면 Unity 엔진을 사용해보는 것을 추천합니다.
이 책은 프로그래밍을 한 번도 해본 적 없는 사람들에게도 매우 유용하며, 본 서평에서 소개한 예제 중 하나는 병아리 구슬 대포 2D 게임을 만드는 부분입니다.
책에서는 총 3개의 챕터에 걸쳐 병아리 구슬 대포 2D 게임 제작에 필요한 최소한의 개념을 단계별로 잘 설명하고 있습니다. 예를 들어, RigidBody와 Collider가 무엇인지 설명하며 이것을 활용해 어떻게 대포를 발사하고 충돌 처리가 되는지 쉽게 이해할 수 있도록 설명되어 있습니다.
또한 3D 게임 예제로서 플레이어가 시작 지점에서 이동 및 점프를 통해 목표 지점에 도달하도록 하는 게임을 만들어보는 과정도 포함되어 있습니다. 여기서는 OnTrigger를 활용한 스크립트상에서의 충돌 처리 및 플레이어가 낙하 시 재시작 등 3D 게임 제작에 필요한 기초적인 내용을 소개합니다.
특히 필자는 이 책을 통해 배운 내용 중에서 Collider에 Physic Material을 설정하여 물체 간의 마찰 계수나 반발 계수 등을 설정할 수 있다는 사실을 재미있게 배웠습니다. 이를 통해 공이 바닥에 닿을 때 바로 멈추는 것이 아니라 자연스럽게 통통 튀며 멈추는 것을 연출해볼 수 있었습니다.
또한 스프라이트와 관련된 내용도 배우게 되었으며, 이를 통해 UI용 스프라이트에 대해 더 잘 이해할 수 있었습니다.
특히 첫 게임 개발이라면 이 책은 더욱 추천할만 하다 생각됩니다. 만약 기초적인 유니티에 대해 이미 알고 있다면, 이 책을 주의 깊게 한 번 살펴보는 것도 좋다 판단됩니다.
유니티를 처음 다뤄보는 입장에서 이 책은 초보자를 위해 필요한 내용을 상세히 안내하며, 최신 유니티 버전에 맞게 잘 개정되어 있다는 느낌을 받았습니다.
중간 중간에는 좀 더 프로젝트를 확장할 수 있도록 깊이 있는 내용도 있었습니다. 하지만 전반적으로 유니티를 처음 사용하는 사람들이 차근차근 따라하며 익히기에 좋았습니다.
게임을 통해 유니티에 처음 입문하길 원하는 독자분이시라면 초보자를 위한 유니티 입문(한빛미디어, 2023)을 추천합니다. 이 책이 유니티에 입문하는 분들에게 제대로 된 안내서의 역할을 해줄 것이라 믿어 의심치 않습니다.
유니티로 게임 만들기에 관심이 있으신가요? 초보자도 쉽게 따라할 수 있는 유니티 게임 개발 입문서를 소개합니다. 2D와 3D 게임 제작부터 모바일 게임 변환까지 실습하며 정복하는 방법을 알려드립니다. 1. 유니티로 게임 만들기에 관심이 있으신가요? 2. 유니티 설치부터 2D와 3D 게임 제작까지 3. 초보자가 게임 개발에 필요한 사용법을 습득하는 데 집중 4. 유니티 UI 시스템과 모바일용 게임 변경 방법도 알려준다 5. 유니티 버전 차이와 C# 지식 필요성에 주의 6. 초보자가 실제로 게임을 만들어보면서 기본기를 익히고 싶은 분들에게 추천 7. 기대와 희망 8. 도움 되는 다른 내용(핫이슈) (대한민국 숙박대전 놓치지말기!)
[유니티로 게임 만들기에 관심이 있으신가요?]
그렇다면 이 책을 추천합니다. 『초보자를 위한 유니티 입문(개정2판)』은 유니티 설치부터 2D와 3D 게임 제작까지 실습하며 정복하는 방법을 알려주는 최적의 입문서입니다. 이 책은 초보자가 게임 개발에 필요한 사용법을 습득하는 데 집중하도록 설치, 설정, 에디터 사용법, 프로젝트와 씬 구성, 오브젝트 설정 등을 쉽게 설명합니다. 또한 유니티 UI 시스템을 이용해 게임 UI도 제작하고 모바일용 게임으로 손쉽게 변경하는 방법도 살펴봅니다. 이 책과 함께라면 유니티 초보자도 게임을 만들 수 있습니다. 이 리뷰에서는 이 책의 장점과 단점, 그리고 누구에게 추천하는지를 솔직하게 알려드리겠습니다.
[유니티 설치부터 2D와 3D 게임 제작까지]
이 책은 유니티 설치부터 2D와 3D 게임 제작까지 실습하며 정복하는 방법을 알려주는 최적의 입문서입니다. 이 책은 총 7개의 챕터로 구성되어 있으며, 각 챕터는 다음과 같은 내용을 다룹니다.
CHAPTER 1 : 유니티를 시작하기 위한 준비: 유니티로 할 수 있는 것과 유니티 설치 방법을 소개합니다.
CHAPTER 2 : 인터페이스와 사용 방법: 유니티 에디터의 화면 구성과 기본적인 조작 방법을 설명합니다.
CHAPTER 3 : 유니티 사용하기: 프로젝트와 씬, 오브젝트, 컴포넌트 등의 개념을 알아보고, 3D 공 굴리기 게임을 만들어봅니다.
CHAPTER 4 : 2D 게임 만들기: 스프라이트, 애니메이션, 물리 엔진 등의 기능을 이용하여 2D 대포 게임을 만들어봅니다.
CHAPTER 5 : 게임 UI 만들기: 유니티의 UI 시스템과 주요 UI 오브젝트를 소개하고, 버튼 클릭 처리와 타이틀 화면 제작 방법을 알아봅니다.
CHAPTER 6 : 3D 게임 만들기: 게임에 필요한 리소스를 불러오고, 캐릭터와 카메라, 스테이지, 장애물 등을 설정하여 3D 장애물 달리기 게임을 만들어봅니다.
CHAPTER 7 : 스마트폰에서 실행하기: 스마트폰용 프로젝트를 만들고, 스마트폰 입력 처리와 빌드 방법을 알아보고, 스마트폰에서 게임을 실행해봅니다.
각 챕터는 이론 설명과 실습 예제를 병행하며 진행되며, 실습 예제는 점진적으로 난이도가 상승합니다. 또한 각 챕터의 마지막에는 정리 및 연습문제가 제공되어 복습과 학습 효과를 높여줍니다.
[초보자가 게임 개발에 필요한 사용법을 습득하는 데 집중]
이 책의 가장 큰 장점은 초보자가 게임 개발에 필요한 사용법을 습득하는 데 집중하도록 설치, 설정, 에디터 사용법, 프로젝트와 씬 구성, 오브젝트 설정 등을 쉽게 설명한다는 점입니다. 이 책은 유니티의 기본 개념과 용어를 명확하게 정리하고, 실제로 게임을 만들면서 필요한 기능과 속성을 하나씩 알려줍니다. 예를 들어, CHAPTER 3에서는 오브젝트에 컴포넌트를 추가하여 중력이나 충돌 등의 효과를 줄 수 있는 방법을 배우고, CHAPTER 4에서는 스프라이트 시트를 나누고 애니메이션 클립과 컨트롤러를 만들어 플레이어의 움직임을 구현하는 방법을 배웁니다. 이렇게 실습하면서 유니티의 다양한 기능과 사용법을 익힐 수 있습니다.
[유니티 UI 시스템과 모바일용 게임 변경 방법도 알려준다]
이 책의 또 다른 장점은 유니티 UI 시스템을 이용해 게임 UI도 제작하고 모바일용 게임으로 손쉽게 변경하는 방법도 알려준다는 점입니다. 이 책은 CHAPTER 5에서 주요 UI 오브젝트인 텍스트, 이미지, 버튼 등에 대해 소개하고, 타이틀 화면과 결과 화면 등의 UI를 만드는 방법을 알려줍니다. 또한 CHAPTER 7에서는 스마트폰용 프로젝트를 만들고, 터치 입력 처리와 빌드 설정 등의 과정을 통해 모바일용 게임으로 변경하는 방법을 알려줍니다. 이렇게 하면 PC에서만 실행할 수 있는 게임이 아니라 다양한 플랫폼에서도 게임을 출시할 수 있습니다.
[유니티 버전 차이와 C# 지식 필요성에 주의]
이 책의 단점은 다음과 같습니다. 이 책은 유니티 버전 2021.1.0f1 기준으로 작성되었으므로, 최신 버전의 유니티에서는 일부 기능이나 화면이 다를 수 있습니다. 이 책은 C# 프로그래밍 언어에 대한 기본적인 지식이 있다고 가정하고 있으므로, C#에 익숙하지 않은 분들은 코드를 이해하는 데 어려움이 있을 수 있습니다. 이 책은 게임 개발에 필요한 사용법만 다루고 있으므로, 게임 디자인이나 최적화 등에 대한 내용은 다루지 않습니다.
[초보자가 실제로 게임을 만들어보면서 기본기를 익히고 싶은 분들에게 추천]
이 책은 유니티 초보자가 실제로 게임을 만들어보면서 기본기를 익히고 싶은 분들에게 추천합니다. 이 책은 유니티 설치부터 2D와 3D 게임 제작까지 실습하며 정복하는 방법을 알려주므로, 초보자가이 책은 유니티 초보자가 실제로 게임을 만들어보면서 기본기를 익히고 싶은 분들에게 추천합니다. 이 책은 유니티 설치부터 2D와 3D 게임 제작까지 실습하며 정복하는 방법을 알려주므로, 초보자가 게임 개발에 필요한 사용법을 습득하는 데 매우 도움이 됩니다. 또한 유니티 UI 시스템을 이용해 게임 UI도 제작하고 모바일용 게임으로 손쉽게 변경하는 방법도 알려주므로, 다양한 플랫폼에서 게임을 출시할 수 있습니다. 이 책은 C# 프로그래밍 언어에 대한 기본적인 지식이 있는 분들에게 추천합니다.
[기대와 희망]
이 책은 유니티 초보자를 위한 최적의 입문서라고 할 수 있습니다. 이 책을 통해 유니티의 기본 사용법과 2D와 3D 게임 제작 방법을 배울 수 있으며, 유니티 UI 시스템과 모바일용 게임 변경 방법도 알 수 있습니다. 이 책은 게임 개발에 관심이 있는 분들에게 매우 유용하고 재미있는 책이라고 생각합니다.
저는 이 책을 읽고 나서 유니티로 다양한 장르와 스타일의 게임을 만들어보고 싶은 마음이 들었습니다. 또한 이 책의 저자분들이 다른 유니티 관련 책을 더 내주셨으면 좋겠습니다. 예를 들어, 유니티로 VR/AR 게임을 만드는 방법이나 유니티로 멀티플레이어 게임을 만드는 방법 등에 대해 알려주셨으면 합니다. 저는 이 책을 통해 유니티의 매력에 빠졌습니다.
이 책을 읽으신 분들께서도 유니티로 꿈꾸던 게임을 만들어보시길 바랍니다. 감사합니다.
이상으로 해당 도서에 대한 리뷰를 마치겠습니다. 해당 서평은 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
'유니티'는 다양한 플랫폼의 콘텐츠를 무료로 만들 수 있는 툴이다. 게임회사에 입사해서 연동검증이라는 QA업무를 해볼 때 처음 다뤘던 툴이다.
현재 유니티의 최신버전은 2022 버전으로 이 책은 유니티 2022 버전을 다루기 위해 출간된 개정2판이다.
유니티는 '무료'라는 가장 큰 특징이 있다. 인디에서 개인이 게임을 간단하게 제작하기 가장 적합한 툴이며, 단순히 개인뿐만 아니라 회사에서도 조직에 큰힘을 부여할 수 있는 툴이다. 책을 따라 가면서 1)유니티 설치 및 허브에 대한 이해 2) 에디터에 대한 이해 3) 게임 제작을 통한 유니티 사용 4) 기능 추가 5) UI 시스템 6) 리소스 사용 7) 게임 .apk 제작 까지 배울 수 있다. 한번 익혀두면 응용이 가능하다.
많은 기초서를 보면, 아쉬운게 앱 완성을 목적으로 따라가는데만 집중하는 책들이 있는데
이 책은 초보자 입장에서 궁금해 할만한 사항을 중간 중간 짚어주는것이 매력적이다.
사진은 씬뷰의 컨트롤 바의 모습이다. 익숙해지면 당연하지만 처음이면 낯설다. 이 부분을 가시화해서 각각 어떤 역할을 하는지 보여준다.
2D 게임을 만들면서 얻을 수 있는 것은 많다. 1)게임의 제작 과정을 전반적으로 이해할 수 있다. 2)유니티 버튼들을 눌러보면서 각각의 역할을 이해할 수 있다. 3)버그등이 발생했다면 버그가 발생한 이유를 보면서 깨달음을 얻을 수 있다.
게임 제작을 해보면, 이제 유니티의 장점인 에셋스토어를 통해 많은 리소스를 적용하며 응용할 수 있고
메타버스 인기가 많이 줄어들었지만, 메타버스를 도입하기 위해 2D 또는 3D형태의 메타버스 플랫폼을 들여와 회사에서 커뮤니티를 강화하거나 웨비나, 공지사항 등에 접목하려는 시도가 많았다. 이러한 메타버스 플랫폼을 활용하여 커스터마이징 하기 위해서 필요한 기술이 유니티였다.
사실 유니티는 메타버스 인기전에 게임개발을 위해 초보자를 포함하여 상용 게임을 개발을 위해서도 굉장히 많이 사용되는 도구이다. 좀더 복잡하고 대규모의 게임 개발을 위해서는 C++을 사용하는 언리얼 엔진을 사용하는 것이 보통이고, 개인 개발자나 좀더 규모가 작거나 할 경우 C#을 이용한 유니티를 사용한다.
유니티가 멀티 OS에서 동작하며, 한번의 개발로 멀티 플랫폼(안드로이드, iOS 등)에서 구동될 수 있음을 책에서는 MacOS 개발환경에서 개발을 하고 안드로이드, iOS에서 구동할 수 있음을 잘 설명해 주고 있다. 극 초반의 유니티 설치 및 개발환경을 구성하는 것을 아주 상세히 설명한 것에 비해 중간 중간 약간 설명이 빈약해 보일 수 있으나, 초보자도 따라가는데 있어 크게 무리는 없어 보인다. C# 국내 개발자가 타 언어에 비해 상대적으로 적지만 유니티에서는 C#을 스크립트 처럼 사용하고 유니티 의존적인 내용이 많으므로 이 역시 상대적으로 익히는데 어렵지 않으리라 본다.
겉 표지의 병아리 사진이 인상적이었다. 누가봐도 초보서적임을 연상케 한다. 이 책은 여러 개정판을 거쳐 개정2판이 되었으며, 발빠르게 변화하고 있는 개발환경을 최대한 반영하기 위해 노력하고 있다. 일본 원서 특유의 세심한 설명도 여러곳에서 볼 수 있었다. 소스에서 개정판을 반영하면서 몇몇 안맞는 부분이 눈에 띄긴 하였지만 초보자도 쉽게 틀린 내용을 발견할 수 있으리라 본다. 유니티를 이용하여 간단한 게임 개발에 도전해보고 싶은 이들에게 친절한 초보서가 될 수 있음에 확신한다.
현재 게임 개발을 위한 도구는 많이 존재한다. 하지만 그것을 일반인이 쉽게 접할 수 있는 도구 중에서 현 시점에 가장 잘 알려진 도구로는 크게 두 가지가 존재한다.
하나는 언리얼 엔진이며, 다른 하나는 오늘 리뷰할 책의 소재인 유니티이다.
언리얼 엔진의 경우에는 진입장벽이 높지만 대략 스케일이 크고 더욱 고화질의 게임을 만드는 데 유용하게 사용되는 편이며, 유니티는 진입장벽이 낮고 작은 스케일의 게임부터 다양하게 활용하기 좋은 도구이다.
그리고 사용하는 언어로는 C#을 이용하기 때문에 C++을 사용해야 하는 언리얼보다는 언어의 장벽도 낮은 편이다.
그래서 스크립트를 만드는 입장에서도 그렇게 어렵게 느껴지지는 않을 것이라 생각한다. 언어 자체보다는 프레임워크에 종속된 함수의 사용 방법을 익힌다고 보는 편이 맞다고 생각한다.
그래서 그나마 게임 입문용 책으로는 유니티에 대한 책을 쉽게 접할 수 있는 편이다. 그래서 이 책도 게임개발 입문자에게 소개하기에 적절하다고 생각한다.
> 책에 대한 간단한 정보
이 책의 부제는 실습하며 정복하는 2D & 3D 게임 개발 기초이다.
앞 표지가 매우 인상적인데, 그 이유는 누가봐도 입문자를 위한 것처럼 보인다는 것이다.
병아리가 상징하는 바가 그러하기 때문이다.
또한 실습의 내용 중 하나인 병아리 알이 내려오면 포탄을 발사하는 게임을 만드는 것이 있는데, 그 부분도 같이 연상되고 있다.
이 책은 개정판이며 개정을 무려 두번이나 하였다. 2016년에 초판, 2019년에 개정판을 내었고, 2023년에는 개정2판을 내었다. 그래서 유니티 2022버전 기준으로 개정된 내용이 수록되었다.
> 인상깊은 부분들
일반적인 입문서에서 중요한 포인트가 여럿 있지만, 그 중 도입부에서 개인적으로 가장 중요하게 생각하는 것은 왜 이 기술을 공부해야 하는가. 그리고 이 책을 왜 읽어야 하는가에 대한 내용이 잘 나와 있어야 한다는 것이다. 이 책은 그 중 첫 번째 항목에 충실하게 잘 기록되어 있다. 유니티를 알면 어떤 도움이 되는지를 알려주기 때문에 이것에 납득간다면 그 안에 기록된 내용을 잘 보고 따라하면서 익히면 되기 때문이다.
이 책은 초반에 바로 따라하기 예제가 담겨있지 않다. 그보다 더 중요한 것이 이 에디터, 즉 유니티 에디터에 대한 설명이 필요하다고 생각했던 것 같다. 그래서 화면의 각 영역에 대한 설명을 잘 기록하였다. 그리고나서 그 다음 장부터 실제 게임을 만드는 부분이 시작된다.
또, 특징 하나는 이 책은 바로 macos를 기반으로 기록되어 있다는 점이다. 게임 개발을 하는 사람들은 흔히 윈도우에서 개발을 많이 하는 것으로 알고 있다. iOS용 게임개발을 한다고 하더라도 빌드만 macos에서 진행할 수 있다면, 게임 개발 자체는 윈도우가 좋은 성능을 내기 때문이다. 하지만 이제는 애플 실리콘인 M1, M2가 잘 나와 있고, 그 성능이 나쁘지 않기 때문에, 무거운 게임을 개발하는 것이 아닌 이상 유니티에서도 충분히 제 역할을 할 수 있다고 본다. 그래서 이 책은 macos를 중심으로 설명하는데 그렇게 이질감이 느껴지지는 않았다. 물론 OS 종속으로 설명한 부분이 많지는 않으나, 스크린샷이 macos이기 때문에 윈도우 환경에서 실습하는 사람은 살짝 어색하게 느껴질 수는 있을 것 같다.
궁극적으로 예제를 마무리 하는 시점에서는 개발한 게임을 스마트폰 용으로 빌드할 수 있음을 알려준다.(Android, iOS) 물론 설명이 그렇게 자세하지는 않고, 지면도 상당히 조금만 할애했다. 그래도 할 수 있다는 가능성을 보여준 것이기 때문에 스마트폰으로 게임을 만들 수 있을까 의문을 품는 자에게는 좋은 가이드가 될 것 같다.(다만 내용이 너무 간결하기 때문에 구글검색이 필수일 것이라는 생각이 들었다.)
나름 2D 게임을 따라하며 반들어봤는데, 물리적인 법칙을 그렇게 어렵지 않게 적용할 수 있다는 사실이 잘 나와 있다. 그걸 체험할 좋은 예제가 수록되어 있다고 생각한다.
이 책에서 관련도서로 나와있는 레트로의 유니티 게임 프로그래밍 에센스 책은 상당히 두껍다. 그래서 이 책을 입문용으로 접했다면, 좋은 선택이며, 이 후 로드맵으로 해당 책도 괜찮다고 생각을 했다. 또한 잘 나온 뒷면의 챕터 제목 나열을 보며 이 책의 아웃라인이 그려질 것이라고 생각한다.
> 괜찮은 부분
유니티 에디터의 사용 방법을 먼저 잘 설명하였다. 각 기능 및 섹션별 사용 방법을 익히기에 좋은 구성으로 되어있다. 처음부터 프로젝트를 만들면서 익힌다기보다는 화면의 각 구성요소가 어떤 의미가 있으며 어떤 때 사용하는 것인지 알려주기 때문에 아무것도 모른 채 시작하지는 않게 된다고 생각한다. 얇은 책의 두께 때문에 바로 예제로 들어갈 줄 알았는데 의외의 부분이라고 생각한다.
초반 설치를 제외하곤 한글로 유니티 허브를 진행할 수 있도록 안내하였다. 유니티 허브를 영문에서 한글로 진행할 수 있도록 안내한 부분이 좋았다. 다만 그 부분을 가장 앞에서 언급하기보다는 어느정도 지나고 알려주고 있는데 그 부분은 아쉽다고 생각한다. 모든 예제를 진행하기에 앞서 알려주고 있기 때문에 실질적으로는 문제가 없다고 생각은 든다.
책을 완독할 확률을 높였다. 책 두께가 두껍지 않아서 끝까지 도달하는 데 그리 오래 걸리지 않는다. 이 예제들을 차근히 진행하다보면 성취감을 쉽게 얻을 수 있다. 책을 시작하는 것은 쉽게 하지만, 그에 비해 끝까지 도달하는 사람은 많지 않은데, 이 책으로 시작한다면 끝까지 못읽는 사람은 없을 것이다. 2D게임, 3D게임, 스마트폰 게임까지 모두 경험해 볼 수 있기 때문에 자신감을 채우며 입문하기에 매우 좋은 책이라고 생각한다.
> 아쉬운 부분
책이 얇기 때문에 오는 깊이에 관한 문제가 있다. 깊고 상세한 원리 파악이 목적이라면 이 책으로는 달성하기 어렵다. 애초에 이 책이 추구하는 바는 유니티를 막 시작하는 입문자를 위한 것이다. 그들이 유니티에 대한 경험을 할 수 있고, 꿈을 키우는 데 목적이 있으므로 그 이상은 인터넷 검색이나 다른 책으로 채워야 한다는 특징이 존재한다.
예제 부록 파일에서 일부 불일치하는 부분이 있다. 샘플 리소스 파일의 파일이름은 책과 동일하게 맞추어져 있지만, 내부의 소스를 살펴보면 클래스 이름 등 일부의 내용이 번역 이전의 이름으로 되어있는 것이 보인다. 해당 부분은 별도로 교정이 가능하니 교정되었으면 좋겠다.(e.g. ChickGenerator.txt 파일 내 클래스 이름이 HiyokoGenerator로 되어있음)
평소에 게임 제작이라는 부분에 관심이 없었던 것은 아니나 어디서부터 시작해야 할지 막막해 했던 것이 사실입니다. 게임이라는 매체를 통해 독특한 경험을 제공하고 사람들과 상호작용할 수 있는 세계를 만든다는 점에서 게임은 매력이 있는 분야임은 분명합니다. 이 게임 제작이라는 막막함에 하나의 빛줄기가 되어줄 책을 하나 만난 것 같습니다.
"초보자를 위한 유니티 입문"이라는 책은 Unity 게임 엔진에 입문하려는 초보자들을 위한 학습 교과서라고 할 수 있습니다. 이 책은 Unity의 기본 개념과 기능을 단계적으로 익힐 수 있는 구성으로 되어 있습니다. 이 책의 지은이는 독자들이 게임 개발에 대한 이해를 높이고, 실전 프로젝트를 진행하며 학습 경험을 얻을 수 있도록 도움을 주고자 합니다.
각 장은 학습의 흐름에 따라 구성되어 총 7장으로 이뤄져 있습니다. 초보자들이 유니티를 시작할 준비를 하고, 인터페이스와 기본 조작 방법을 익힌 후에는 게임 제작 과정을 진행합니다. 2D 게임부터 3D 게임, 스마트폰용 프로젝트까지 다양한 주제가 다루어집니다.
이 책의 가장 큰 장점은 그림과 사진을 활용한 단계별 실습입니다. 각 단계마다 명확한 시각 자료를 제공하여 학습자들이 내용을 쉽게 파악하고 실습을 따라 할 수 있도록 도와줍니다. 또한 초보자를 위해 단계적인 학습 방법을 제공하여 게임 개발의 기초부터 실전까지의 과정을 체계적으로 익힐 수 있습니다. 또한 유니티의 다양한 기능을 실용적으로 다루는 내용도 장점 중 하나입니다.
아쉬운 점이라고 한다면 상세 내용이 좀 부족하지 않나라고 생각이 드는 부분입니다. 게임 개발은 다양한 요소와 기술을 포함하기 때문에, 모든 주제를 상세히 다루는 것은 어려운 일입니다. 따라서 일부 개념이나 기능에 대한 깊이 있는 설명이 부족할 수 있습니다. 최신 업데이트와 호환성 문제가 발생할 수 있는데 다행히 이 책은 Unity 2022가 반영이 되어 있어 실습 시에는 따라 하는 데 부족함은 없었습니다.
학습자들에게 실습을 통한 직접적인 학습 경험을 제공합니다. 단계적인 구성과 그림, 사진을 통한 시각적인 자료를 활용하여 학습자들은 쉽게 내용을 이해하고 실습을 따라 할 수 있습니다. 이 책을 통해서 입문자들이 Unity 게임 개발에 필요한 기본 기술과 개념을 습득할 수 있으며, 실전 프로젝트를 통해 실용적인 경험을 쌓을 수 있습니다. 하지만 더 나은 학습 경험을 위해 참고할 수 있는 대안적인 자료인 유니티 공식 문서나 튜토리얼들도 함께 살펴봐야 할 것이라 생각합니다.
여기저기 귀를 따갑게 울리던 '메타버스'라는 버즈워드(Buzz word)가 한풀 꺾였습니다. 그럼에도 디지털이 가져온 무한에 가까운 가능성은 여전합니다. 특히 디지털로 구현할 수있는 가상현실(VR, virtual reality)은 디지털의 꽃이라고 해도 과언은 아니지 않을까 합니다.
게임만을 위한 도구로 제한될 것이 아니라 가상현실 활동을 위한 도구로서 유니티는 매우 중요한 역할을 하고 있습니다. 그래서 '초보자를 위한 유니티'는 더더욱 관심을 끌었습니다.
'초보자'라는 모호한 개념
어떤 책이나 '초보자'라는 개념은 매우 중요하면서도 어렵습니다.특히 유니티는 디지털로 만들어지는 세계 또는 현실에 대한 상상력이 매우 필요하기 때문입니다.이 책 '초보자를 위한 유니티 입문(개정2판)'은 꼼꼼한 설명에도 불구하고 '초보자'에 대한 사전 설명이 조금 더 있었다면 하는 아쉬움이 있었습니다.언제나 '초보자'를 정의하기가 어렵다면 '내가 생각한 "초보자"는 어떤 것이고, 이 책의 독자에 대한 좀 더 구체적인 고민이 설명으로 나와 있었다면 어땠을까?'하는 생각이 들었습니다.분명 어느 저자나 기술서적을 쓸 때 반드시 고민했을 요소이므로 이 부분에 대해서 독자에 대한 당부와 기초지식을 습득할 안내가 더 있었다면 어땠을까 하는 아쉬움이 있었습니다.
개인적으로 유니티 입문과정을 통해 유니티로 작은 프로젝트를 실행해본 경험이 있지만, 유니티를 한동안 사용하지 않아 거의 다 잊은 입장에서 '초보자를 위한 유니티 입문(개정2판)'은 굉장히 매력적인 제목이었습니다.
유니티 말만 듣고 한 번 해봐야겠다는 사람들도 있을테고, 그 분들 가운데서도 프로그래밍에 대한 경험과 지식이 있느냐 아니냐에 따라 '초보자'란 개념이 주관적으로 매우 다를 수 있어서 이런 점에 대한 독자 또는 출판사의 고민이 좀 더 풍부했다면 더 좋았을텐데 하는 생각이 있었습니다.
그러면 독자들은 책을 읽을 때 어떤 요소를 주의할 수 있을텐데 그리고 부족한 것은 어디서 어떻게 확인할 수 있는 지 미리 알아둘 수 있지 않았을까 하는 생각이 들었습니다.
'기술서적'의 또 다른 고민, 메뉴와 사용자인터페이스 변경
분명 2판을 쓰게된 주요 요소 가운데 하나일텐데 안타깝게도 메뉴와 사용자인터페이스가 다소 변경이 되었습니다. 저도 기술관련 문서를 번역하는 일을 개인적으로 여러차례 해봤는데, 늘 업데이트에 따른 메뉴 또는 사용자인터페이스의 변화로 포기하는 일이 잦았습니다. '초보자'들은 메뉴의 개념에 대한 이해가 부족하기 때문에 약간만 메뉴구성이나 사용자인터페이스가 변경되면 당황할 수 있을텐데요.
가령 예를 들자면, 47페이지에서 '씬(Scene)'의 메뉴 설명 가운데 '씬 표시 설정'에서 'Miscellaneous'와 'Deferred'에 대한 내용이 친절히 설명되어 있는데, 2023년 5월 현재 해당 요소들이 사라져 있습니다.
인공지능 시대에 들어서면서 챗지피티(ChatGPT)와 같은 대화형인터페이스(Coversational Interface)가 메뉴 또는 사용자경험(UX, user experience)로 들어오게 되면서 근본적인 변화가 도래하고 있다는 점에서 이런 변화들은 앞으로 어떻게 구현이 될지 좀 더 궁금합니다.
확장현실에 대한 기초 설명의 아쉬움
2차원(2D)이든 3차원(3D)이든 유니티로 구현할 세상은 또 다른 확장된 현실입니다.
메타버스이냐 아니냐는 차치하고, 새롭게 구현된 현실에 대한 기본 개념과 기초 정보가 미리 공유되면 기능을 익혀서 활용할 수 있는 상상력을 자극하는 데 도움이 되지 않을까 하는 생각을 해봤습니다.
직접 확장현실 솔루션을 사업화 하는 입장이라서 더욱 아쉽게 여기는 게 아닌가 싶지만, 그래서 배운 유니티 기술을 어디에 어떻게 그리고 궁극적으로 '왜' 사용하려는 지에 대한 인식을 미리 알려주고 시작하면 더 좋지 않았을까 생각했습니다.
그랬다면 아마도 '기즈모(Gizmos)'라는 낯선 용어에 대한 개념을 좀 더 수월하게 이해하고 필요성에 대해서 쉽게 적응할 수 있었을 것 같습니다.
참고로 '기즈모'는 확장현실에서 배치된 오브젝트(사물)를 제어하는 다양한 요소들을 시각화 한 것을 말합니다.
가령 3D에서는 해당 오브젝트를 3차원에서 6가지 자유도(DoF, Degree of Freedom)로 다룰 수 있게 시각화해서 제어하도록 돕는 기즈모부터, 조명과 그림자 등의 위치를 다루는 기즈모 등 다양한 기즈모가 존재하며 이를 눈에 띄게 제어하도록 알려주는 것들을 말합니다.
그럼에도 불구하고 이 책은 장점이 참 많습니다.
정성들인 인터페이스 또는 메뉴 설명
하나하나마다 정성들여서 사용법을 유기적으로 연결해서 알려주고 있고, 추가적인 설명을 박스 형태로 안내해주고 있습니다. 가령 실무적으로 초보자들이 화면을 제어하는 기즈모를 다루다가 장면이 바뀌었을 때 당황하기 쉬울 수 있는데, 그 때 오브젝트의 좌표 원점에 대한 설명을 추가해줘서 놀라지 않고 제자리로 찾아갈 수 있게 하는 등은 이 책의 큰 장점이 아닌가 합니다. 설치 후에 곧바로 메뉴 또는 인터페이스와 익숙해지도록 구성했는데, 이 점은 실습으로 배우면서 개념을 깨치고 싶어 하는 분들에게는 오히려 장점이 되지 않을까 싶습니다.
기본 사용법 익히기
유니티가 각광받게 된 가장 큰 까닭 가운데 하나는 '물리 동작'에 대해서 따로 계산할 필요가 없고 물리적 지식이 많지 않아도 오브젝트를 다양한 형태로 조작할 수 있기 때문이었을 겁니다. 이 점에서 제3장 '유니티 사용하기'는 실습을 통해서 금방 익힐 수 있게 도와 줍니다. 다만 아쉬움이 있다면 예제 프로젝트를 QR 코드 등으로 쉽게 이동할 수 있는 안내가 있었다면 좋지 않았을까 싶었습니다.
2D 게임 만들기를 통한 학습
기본적으로 2D에서 활용할 게임을 예제를 통해 각 기능을 배울 수 있도록 친절히 안내하고 있습니다.
특히 소스를 미리 배포해주어서 해당 소스를 통해 게임을 만들 수 있도록 한 점은 게임을 만들 때 필요한 기능들을 반복해서 익히도록 설계되어 있습니다.
다만, 게임에 대한 간단한 기획과 어떤 까닭으로 해당 게임을 만들게 되었는지, 해당 기능을 고려한 까닭은 무엇인지 등에 대해서 사전에 체계적으로 고민할 수 있도록 책이 서술되었다면 하는 아쉬움은 있었습니다.
아울러 갑작스럽게 나타난 '스프라이트'라는 개념을 좀 더 상세히 설명해주었다면 어땠을까 하는 생각이 들었습니다.
"초보자"를 위한 안내서인데, 개념 설명이 다소 약한 느낌은 계속해서 들게 되었습니다.
아무래도 실습을 통해 2D와 3D 게임을 개발하는 데 초점을 맞춰서 그런 게 아닌가 싶습니다.
따라서 게임을 만들다보면 생각이상으로 고려할 요소가 많다는 걸 알게되고 자연스레 해당 요소들의 기능과 역할에 대해서 익히게 되는 점은 '실습을 통한 학습'의 장점이 아닌가 싶습니다.
제어를 위해서 코딩도 익히게 되는데, C# 코드 스크립트 들이 등장하는데 프로그래밍을 배운 적 없는 '초보자'들에게는 다소 장벽이 되지 않을까 싶습니다.
다만, 게임 하나에 얼마나 많은 요소들이 들어가는 지에 대해서는 확실히 생각하는 훈련을 제공한다는 장점도 있다고 봅니다.
3D 게임 만들기를 통한 학습
실습에서 다루는 게임은 '장애물 달리기 게임'인데, 장애물을 배치하고, 플레이어를 조작하면서, 카메라를 통해 시점을 변화시키는 등의 입체감 있는 게임을 만드는 방법을 익힙니다.
특히 3D 게임은 애셋 스토어가 중요한 역할을 하므로 에셋 스토어 사용법과 그 밖에 3D로 구현하게 됨에 따라 빛 처리 방법과, 6 자유도(DoF)를 고려한 캐릭터 움직이기 등의 추가적인 설명이 제공됩니다.
3D 게임은 홀로 작업해서 만들기가 어려운 만큼 애셋 스토어가 중요하기에 상세한 설명을 해당 챕터(제6장)에서 다루고 있습니다. 그리고 플레이어가 3차원에서 작동하므로 플레이어를 잃지 않기 위해 '태그'를 설정하는 방법부터 플레이어를 따라 카메라를 이동시키는 등의 입체적이며 몰입감을 높이는 속성을 매우 잘 설명하고 있습니다.
스마트폰에서 실행하기
3D로 만든 게임을 스마트폰에서 실행할 수 있도록 변경하는 방법을 학습합니다.
특히 스마트폰은 사용자의 컨트롤이 키보드나 마우스 등을 사용하지 않으므로 사용자경험이 전혀 달라집니다.
이런 요소에 대한 고려와 안드로이드 및 아이폰에서 작동하도록 만들 때 필요한 사항에 대해서도 함께 학습을 하도록 매우 친절한 방식으로 게임을 만들 수 있도록 안내해줍니다.
최종적으로 스마트폰에서 실행할 수 있도록 학습을 마치고 나면 전체 실습과정은 끝이 납니다.
찾아보기
마지막에 주요 키워드를 통해서 찾아보기를 하도록 색인을 매겨 두었습니다.
후기
실습을 통해서 몰입형 환경에 대한 이해를 자연스레 닦을 수 있도록 잘 설계 되어 있는 책입니다.
다만, '초보자'들에게 기본적인 개념을 잘 설명해주면 더 좋지 않았을까 하는 아쉬움도 있습니다.
기본 개념에 대한 설명이 부족한 것도 있거니와 '초보자'들을 고려한다면 개념을 잘 이해시켜주는 것은 매우 필요하지 않을까 싶습니다.
실습을 통해서 상당히 완성도 높은 2D, 3D 게임을 만들고, 모바일에 내보내는 방법까지 배울 수 있다는 점에서 이 책은 그만한 가치를 갖고 있다고 생각합니다.
최근에 “게임전쟁”이라는책을 접하게 되었다. 2000년대 초중반을 중심으로 소니, 닌텐도, 마이크로소프트 등과 같은 콘솔게임기 업체간의 전쟁과 같은 게임 세계사를 흥미롭게 다루고 있었다. 그리고, “초보자를 위한 유니티 입문”이라는 책을 읽을 기회가 생겼다. “유니티”라는 이름은 들어 봤고, 게임개발 관련 소프트웨어라는 정도만 막연히알고 있었다. 게임프로그램도 웹사이트 등에 비해 난이도가 높고 내공이 높은 개발자들이 만들어 내는 게아닐까 정도의 생각이 평소에 있었다. 잘 따라 할 수 있을까라고 반신반의하면서 책의 내용을 차근차근보기 시작해서 책을 덮을 즈음에는 내 스마트폰에서 실행되는 간단한 3D 게임을 결과물로 가질 수 있었고책의 내용에 만족한다.
책은 7개의 Chapter로구성되어 있다. Chapter1은 유니티를 시작하기 위한 준비로 여타의 도구 사용 교육 책의 내용과비슷하게 유니티의 장점, 설치 방법 등을 다루고 있다. 개인과연 매출 10만 달러 이하의 조직은 무료로 사용할 수 있는 점이 큰 장점으로 생각되었다. 책 앞부분의 일러두기에서 유니티 업데이트 및 개선으로 인해 출간 시점의 책의 정보 및 캡쳐 이미지가 다를 수있다고 언급이 있지만, 안내하는 대로 2022 버전중 최신버전을 설치했을 때 메뉴, 기능 등이 틀려서 따라하는데 어려움이 있지는 않았던 것같다. 유니티 설치 안내가 맥OS, MS윈도우 순인 것이 약간 색달랐고, 이후 Chapter에서의 화면 캡쳐도 맥OS 환경이긴 하지만 MS윈도우 환경에서 따라하는데 특별한 어려움은없었다.
Chapter2는 인터페이스와 사용 방법으로 유니티 에디터의 화면구성과 프로젝트와 씬을 만들고, 씬에 오브젝트를 배치하고, 오브젝트에컴포넌트(기능)을 설정하는 등의 기본적인 조작방법을 서술하고있다.
Chapter3은 유니티 사용하기이다. Chapter4에서 2D 게임을 만들기 전에 프로젝트와 씬을 생성해서경사면, 공 등의 기본적인 오브젝트들을 만들어 보는 준비운동의 성격을 가진 챕터이다.
Chapter4는 2D 게임만들기이다. 책 표지 디자인에 타일로 뒤덮여 있는 병아리 구슬들을 대포 포탄으로 맞추는 간단한 게임이다. 하나씩 따라하면서 책에서 의도한대로 동작되는지를 확인하는 것도 즐겁고 뜻밖의 동작이 발견되면 흥미롭기도 했다. 대포포탑에서 포탄이 발사되고 2초후 사라지는 코드를 추가하기 전의상황에서 위로 수직으로 발사한 포탄이 화면 상단 밖을 벗어났다가 예상치 않게 화면 안으로 낙하했는데 실세계와 같이 중력이 작동하고 있음이 신기했다.
Chapter5는 게임 UI 만들기이다. Chapter4에서 만든 2D게임에 타이틀 화면을 추가하면서 버튼, 텍스트 등의 UI 오브젝트와 이벤트에 관련된 스크립트 내용들을 추가로다루고 있다.
Chapter6은 3D 게임만들기이다. 2D 게임 만들기에서와 마찬가지로 첫 페이지에서 만들 예제의 주요 내용을 소개하고 있다. 에셋 스토어 사용, 캐릭터 움직임,텍스처 적용, 라이트 사용 연출, 시간 기록과최고 점수 표시, 목표 지점과 재시작 처리, 사운드 사용방법을 안내하고 있다. 에셋 스토어에서의 방대하고 다양한 무료 또는 유료 에셋을 활용해서 쉽고 효율적으로게임을 개발할 수 있도록 하고 있다.
Chapter7은 스마트폰에서 실행하기이다. 챕터6에서 만든 3D 게임을스마트폰용 프로젝트로 만들고 터치스크린에서의 입력 처리 방법을 추가하고 경량화한 후 아이폰이나 안드로이드폰에서 실행할 수 있도록 기술하고 있다. Chapter7까지 차근차근 따라하고 약간의 문제는 인터넷 검색 등의 도움으로 책 페이지 이미지과 같은 3D게임을 내 스마트폰에서 실행할 수 있게 되었다. 플레이어가 몇 개의장애물을 지나쳐 목표 지점에 도착하면 끝나는 단순한 게임이다.
독자마다 독서 스타일, IT지식,PC환경 등에 따라 책에 대한 선호가 다르겠지만 개인적으로 생각하는 이 책의 장점은 따라해야 하는 절차, 화면 캡처에 대한 설명이 자세하고 반복된다는 점이다. 어떤 책에서는화면 캡쳐 이미지내의 내용을 참고해야 할 때 폰트가 작아서 안 보이는 경우가 있다. 이 책에서는 화면캡쳐내 참고해서 입력해야 하는 수치 등을 적당한 폰트크기의 텍스트로 다시 안내하고 있다. 또한, 유니티 개발도구 화면 전체 중 설명하려는 부분을 확대해서 제시하고 있어 어떤 영역에 대한 기능 설명인지를 더욱알기 쉽게 하고 있다.
책을 따라가면서 몇 번의 문제가 있었는데 가능한 문제상황에 대해 저자나 역자의 트러블슈팅 같은 것이 있으면 더좋았을 거라는 아쉬움은 있다. 유니티 설치할 때 안드로이드 개발 용도로 Android NDK Tools가 추가 모듈로 설치되어야 하고, 설치중에러가 발생했는데 설치후 해당 버전의 유니티 설치 모듈에는 “installed”로 정상적인 것으로 표시되었다. 나중에 3D게임을 안드로이드용으로 빌드하려고 했을 때 Android NDK Tools 문제가 발생해서 인터넷 검색도 해보았는데 해결책을 쉽게 찾지 못 해 유니티 2022 버전중 최신인 2022.2.19f1을 추가로 설치하면서 해당모듈도 정상적으로 설치하고 빌드도 가능했다. 빌드할 때 책에서는 Buildand Run 버튼을 누르도록 되어 있는데 계속 에러가 나서 임의로 Build 버튼만 누르고생성된 *.apk 파일을 스마트폰으로 복사했다. 이후 스마트폰에서*.apk 파일 실행할 때 알 수 없는 출처의 앱과 같은 경고 등으로 설치가 쉽지 않았는데, 이러한 부분들은 많은 독자들이 경험할 가능성이 크다고 생각한다. 트러블슈팅정보가 제공되었으면 좋지 않았을까라는 과한 생각을 해본다.
본격적으로 게임개발을 하기 위해서는 이 책으로는 많이 부족할 것같다. 하지만, 이 책을 차근차근 따라하다 보면 스마트폰에서 동작하는 3D 게임을만들 수 있고, 초보자를 위한 유니티 입문서로서의 역할을 충실히 수행한다고 생각한다.
유니티는 게임 개발을 위한 엔진들 중 하나다. 유니티를 처음 시작할 때 필요한 것은 아주 작은 호기심과 실행력 뿐이다. 그만큼 접근하기 쉽도록 잘 만들어진 엔진이기도 하고, 인터넷에서도 많은 자료들이 있기 때문. 그럼에도 정말 처음 시작하는 사람이라면 무엇부터 시작하고, 배워야하는지 찾는 것 자체도 난관이 될 수 있기 때문에 초심자들에게 책은 좋은 선택 중에 하나다. 오늘 이야기할 책은 한빛미디어의 초보자를 위한 유니티 입문(개정2판)이다.
책 초보자를 위한 유니티 입문(개정2판)은 유니티를 한번도 다뤄보지 않았거나, 기본적인 기능을 익히고자 하는 초심자들에게 적합한 책이다. 유니티 엔진을 다뤄서 게임을 만드는 방법을 알려주는 책들은 시중에 이미 많이 있지만, 각각의 책들이 가진 타겟들은 서로 다르다.
이 책은 총 7개의 챕터로 구성되어 있다. 처음 3개의 챕터는 유니티 설치와 인터페이스에 대한 기본적인 설명을 담고 있으며, 그 이후에는 간단한 게임들을 만들 수 있도록 한다. 2D와 3D 프로젝트를 둘 다 진행하기 때문에 유니티의 기본적인 기능을 익히며 각 방식의 차이점이 무엇인지를 인지할 수 있다.
이 책에서 나오는 각 예제들이 유니티의 기본적인 기능을 다루긴 하지만, 스프라이트나, UI, 텍스처, 라이트, C# 스크립트 등 전반적인 부분을 두루 이야기한다.
앞에서 이야기한 것처럼 시중에는 이미 많은 유니티 서적들이 있다. 그럼에도 지금 이야기하는 초보자를 위한 유니티 입문(개정2판)의 강점이라 한다면, 전문 서적치고는 얇은 두깨로 유니티를 부담 없이 접근하기에 좋고, 입문자들이 차근차근 이해할 수 있도록 도표나 그림들을 활용하여 이해를 돕는다는 점, 그리고 최근 버전의 유니티에 대응했다는 점이다.
자신이 입문자의 수준을 넘어섰다면 이 책은 너무 기본적인 내용만을 다룬다고 느낄 수도 있겠다. 다만 그럼에도 기능만 알뿐 기본기를 갖추고 싶다거나, 프로그래밍에 익숙하지 않은 사람이라면 이 책이 유니티와 친해지는데 첫걸음을 내딛을 수 있도록 큰 도움을 줄 것이라 기대한다.
개정 2판으로 새 번째로 나오는 책으로 이전 판들의 내용을 보지 못했으나, 지금의 내용 만으로도 충분한 유니티 입문서 역할을 할 수 있을것 같다. 하나하나 예쩨를 따라 해보는 방식으로 구성되어 있어 일단 내용을 잘 모르더라고 게임 제작 구현을 해봄으로서 유니티를 어떻게 사용하는지, 게임 개발 프로젝트는 어떻게 진행되는지 간략하게 나마 경험을 할 수 있다.
일단 입문자들이 보기 쉽게 그림이 많이 들어가 있어서 진행에 어려움이 없다. 또 각 챕터별로 예제가 다르게 구성되어 있어 이전 챕터에서 진행 내용이 완료되지 못해 다음챕터로의 진행이 안되는 부분이 발생 하지 않도록 구성된것이 맘에 들었다. 물론 챕터별 예제자료는 미리 다운로드 해 놓는 것이 좋겠다.
각 챕터에서 다루는 내용은 다음과 같다.
챕터1는 유니티에 대한 설명과 윈도우, 맥os 기반 설치를 안내하고 있다. 챕터2는 유니티를 실행 했을때 보이는 각 메뉴 구성들의 기능과 사용법을 소개 챕터3는오브젝트를 배치하고 위치 설정하기. 카메라를 설정하여 화면 변경하기. 오브젝트에 물리적인 동작 추가하기. 오브젝트의 색 변경하기. 게임 실행해보기 소개. 챕터4는 스프라이트 가져오는 방법, 스프라이트를 나누는 방법, 스크립트 작성 방법, 스크립트로 플레이어를 움직이는 방법, 프리팹을 이용한 오브젝트 자동 생성 방법 소개 챕터5는 UI시스템 사용법, UI 오브젝트의 위치 설정, 다양한 UI 오브젝트, 이미지 데이터 배치, 버튼 배치, 씬 이동 방법, 버튼 클릭으로 함수를 실행하는 방법을 소개 챕터6는 에셋 스토어 사용방법, 캐릭터를 움직이는 방법, 텍스처를 사용하는 방법, 라이트를 사용한 연출, 시간 기록과 최고 점수 표시, 목표 지점과 재시작 처리, 사운드 사용 방법 소개 챕터7은 스마트폰용 프로젝트 만드는 법, 스마트폰에서의 입력 처리 방법, 실행 시 기기의 부담을 줄이는 방법, 아이폰애서 실행하는 방법, 안드로이드폰에서 실행하는 방법 소개
이 책으로 일단 유니티로 게임 개발 하는 과정을 간략하게 익히고 심도 깊은 내용으로 들어가면 좋겠다.
유니티를 이제 막 시작하려는 분들에게 추천하고 싶은 이 책은 한빛미디어에서 출간된 "초보자를 위한 유니티 입문"으로, 유니티 엔진을 이용하여 2D, 3D, 스마트폰용 게임을 만드는 과정을 담은 책이다. 1장에서는 유니티에 관련된 기본 지식과 설치 방법, 유니티 허브를 설명하고, 2장에서는 유니티 에디터 화면을 살펴보면서 각 기능을 사용하는 방법에 대해 설명한다. 3장 부터는 공 굴리기 3D 게임을 만들어보면서 유니티를 익히고, 4장에서 7장까지 게임의 기능을 추가해보면서 여러 리소스를 사용하는 방법에 대해 다루게 된다.
유니티의 장점 중 하나는 멀티 플랫폼 대응이 가능하다는 것이라 여러 게임 제작을 위한 회사에서 다양하게 활용되고 있다. 주요 대응 플랫폼으로는 윈도우, macOS, iOS, 안드로이드, 리눅스, tvOS, 안드로이드 TV, WebGL 등으로 굉장히 다양한 편이라고 한다. 이 책에서는 굉장히 쉬운 예제를 토대로 초보자의 입장에서 게임을 만드는 방법에 대해 담았으며, 유니티를 아무것도 모르는 사람이 보고 쉽게 따라 할 수 있을만큼 기술되었다. 시중에 나와있는 유니티 관련 유명한 책인 레트로의 유니티 게임 프로그래밍 에센스 책보다 책 두께도 얇은 편이고, 쉽게 따라할 수 있는 내용 위주로 압착이 되어있어서, 유니티에 대한 기초를 다루는데에는 이 책으로 시작하기에 매우 적절해보인다. 특히 유니티 인터페이스와 사용 방법을 에디터 화면을 살펴보면서 각 기능을 사용하는 방법에 대해 설명하고 있어서 내용이 쉽게 이해된다. 이 책은 참고로 유니티 엔진 2022.2 버전을 기반으로 작성하고 동작 테스트를 완료했다고 한다.
모바일 게임 회사 마케터로 일하면서 나도 게임을 만들어 보고 싶다는 생각을 했었습니다. 저같이 게임 제작에 대해 기초가 잡히지 않는 사람에게 좋은 책이 있어 소개합니다.
책 제목은 “초보자를 위한 유니티 입문 개정2판”으로 유니티 게임 개발에 대한 입문서 입니다.
저는 모바일 게임을 만들고 싶었기 때문에 ios, android 두 가지를 모두 개발할 수 있는 유니티를 배우고 싶었습니다. 그렇기에 이 책이 저같은 초보자에게 딱 이라고 생각했습니다. 그렇게 생각했던 이유는 책이 정말 초보자 눈높이에 맞게 쉽게 쓰여졌기 때문입니다. 책의 절반은 스크린샷 이미지라고 할 정도로 세세하게 하나하나 정성스럽게 따라 해야하는 과정을 보여주기 때문에 정말 책을 보면서 따라만 해도 유니티로 게임을 만드는 제 자신을 볼 수 있었습니다.
초보자를 위한 책이니 만큼 실습의 난이도 또한 적절한 것 같습니다. 유니티로 3D, 2D 게임을 만들어보고 게임 UI도 만들어보면서 정말 기초적인 게임을 완성시킬 수 있는데 이런 경험을 바탕으로 자신이 원하는 3D, 2D 게임의 개발 방향성을 잡고 더 고급 기술을 찾아 익힐 수 있는 눈이 생기는것을 느꼈습니다.
그리고 중간중간 저자들의 노하우가 담긴 노트들의 내용들이 있기에 마치 게임 제작 선배님들을 옆에 두고 답변을 듣는 듯한 느낌이 들기도 했습니다.
이 책을 통하여 유니티 기능들이 어떻게 어디에 쓰이는 지 실습하고 학습했기 때문에 내가 구현하려는 게임에 대해서도 어디서 어떤 기능을 쓰면 되겠구나 하는 감이 잡히 실 것입니다.
게임 개발자는 아니었지만 게임을 만들어 보고 싶다는 욕망이 있어서 동기들과 같이 책 한권을 선정해서 따라서 게임을 만들어 보며 스터디를 했었다.
비록 스터디를 몇번 안하고 끝났지만 당시 비개발자이면서도 흥미를 잃지 않고 계속 혼자 공부하던 동기는 실제 구글스토어에 게임을 출시하기도 했고 또 한명의 비개발자 동기는 무려 게임 플랫폼에 PC게임으로 출시했다.
그 당시 이후로는 유니티를 볼 일이 없다가 이번에 우연찮게 '초보자를 위한 유니티 입문' 이라는 책을 읽게 되었다.
얼마만의 유니티인가 하면서 책을 딱 보았는데 웬걸 책 표지부터 너무 귀여워서 누가보면 개발서적이 아닌줄 알겠다.
노란색 병아리가 가득한 책이라니 멀리서도 시선을 사로잡을 책이다!!! (정말 책 표지 잘 뽑은 것 같다ㅋㅋㅋ)
책은 총 일곱챕터로 되어 있으며 유니티에 관한 기본적인 내용 및 설치, 인터페이스 사용법, 기본적인 유니티 사용해보기를 시작으로 2D, 3D 게임 만들기와 UI 만들기 그리고 마지막으로 스마트폰에 빌드해서 실행하기로 구성되어져 있다.
이처럼 정말 유니티가 무엇인지 부터 시작해서 책을 따라서 2D, 3D게임을 모두 만들어 볼 수 있으며 추가적으로 게임 UI까지 만드는 방법까지 자세히 나와 있어서 나처럼 초보자들도 이 책만 보더라도 정말 많은 기능들을 사용해볼 수 있는 책이였다. (정말 쉽고 자세하게 나와있어서 유니티를 빠르게 익힐 수 있는 홍보 책자 같다ㅎㅎ)
또한 예제 소스가 있어서 그 예제 소스를 가지고 책의 내용을 따라하기 좋았다.
유니티 홍보 책자라고 비유할정도로 나처럼 유니티 입문자들도 쉽고 빠르게 익힐 수 있는 책인것 같아서 게임을 만들어 보고 싶은 욕망이 가득한 사람(개발자, 비개발자 상관없이)들은 꼭 읽어보길 추천한다 :)
입문서를 만들 때 커리큘럼을 잘 짜지 않으면 앞에 나오는 실습에서 활용하는 기술을 나중에 설명하게 되어 처음 다룰 땐 온전히 이해하지 못한 채 따라가게 되는 경우가 종종 있는데, 이 책은 그런 것 없이 앞에서부터 차근차근 따라가면 이해하지 못한 채 그저 따라하는 것 없이 잘 이해할 수 있도록 구성되어 있다. C# 문법 설명을 장황하게 하지 않아 필요한 내용만 간결하게 들어있으면서도, 해당 스크립트가 어떠한 기능을 하는 스크립트인지는 자세하게 설명해줌으로써 C#에 대한 이해도와 무관하게 유니티를 익혀 나갈 수 있도록 하였다. 구현한 게임을 각자의 운영체제에 맞게 내보내서 실행해보고, 모바일용으로 변환하여 내보내 스마트폰에서 실행해봄으로써 크로스 플랫폼 게임 개발에 대한 경험을 쌓을 수 있다.
당연하게도 게임 프로그래밍에 관심 있는 사람에게 추천하는데, 여기에는 유니티 스크립트의 기반이 되는 C#을 모르는 사람도 포함한다. 이 책은 C#을 전혀 모르는 상태에서도 무리 없이 따라갈 수 있다. C#은 이 책을 통해 유니티를 어느 정도 익힌 후, 본인이 게임 상에 구현하고 싶은 기능이 있을 때 그 때 가서 공부해도 충분하다.
2019년 개정판 출간때는 흰색병아리 사이에 노랑 병아리가 하나 있는 표지 디자인이었던 모양입니다. 이번 개정2판의 표지는 반대로 노랑병아리 사이에 흰병아리가 하나 있는 디자인으로 바뀌었네요. 병아리가 초보 개발자를 뜻하는 것 같기도 하고 ... 여하튼 귀엽습니다.^^ 2016년에 초판이 발행되어 3년정도마다 개정판이 출간된다는 건 그만큼 유니티 초보 입문서로서 인정을 받고 있다는 의미라고 생각합니다.
끝까지 완성해 본 게임은 없지만, 이미 유니티 관련 서적을 몇권 보긴 했습니다. 한두권으로 마스터 하겠다는 과욕에 괜히 두꺼운 책들을 여럿 봤던 것 같아요. 성경책에 비해 뒤지지 않는 두꺼운 책의 무게만큼이나 방대하고 복잡한 내용에, 유니티 버전이 바뀌면서 자연스레 생기는 에러에, 예제 샘플들에 종종 들어 있는 오탈자 등 ... 책을 반정도 보다가 덮어버리기 일쑤였는데요.
하지만, 이번에 받은 '초보자를 위한 유니티 입문'은 저자들이 일본인이라 그런지 일본인 특유의 간결하고 체계적인 정리가 마음에 듭니다. 필요이상으로 어려운 개념을 설명한다든가 아직은 쓸 일이 없는 기능들을 설명한다든가 하여 초보입문자로 하여금 혼란을 느끼게 하지도 않구요.
퇴근후 하루 10~20분정도 투자해서 책을 따라가 봤는데, 5~6일정도만에 5장 게임UI만들기까지 따라 만들어 볼 수 있었습니다. 책의 내용상 5장까지가 2D 관련 내용입니다. 어렵게 느껴진 내용도 없었고 오탈자 등으로 고민하게 되지도 않았습니다. 다만, p170 그림에 붙어 있는 1번 말풍선에 아마도 CannonBall 이 아니라 ChickBall 일 것 같다는 정도나, p181 게임빌드할 때 Scenes In Build 를 Main 으로 해 두지 않으면 빌드후 실행했을 때 파란화면만 보인다는 설명이 빠졌다는 정도가 문제스러웠습니다. 그리고, p182에 뜬금없이 타일맵으로 스테이지 만들기가 설명되어 있는 정도 ... 발견한 것 같습니다.
6장을 통해 3D게임도 한번 만들어 보고, 7장을 통해 스마트폰에서 실행도 해 보면 또 다른 문제점을 발견하게 될지도 모르겠지만, 5장까지 따라해 본 바로는 다른 어떤 책들보다 쉽고 간결하게 잘 간추려진 입문서라고 생각합니다. 쌩초보인 경우, 이 책을 먼저 따라해 보고 유튜브를 통해 강좌들도 찾아서 보고 하면서 만들고 싶은 게임을 기획하고 난 후, 두꺼운 유니티 바이블들을 필요시 찾아서 보는 것도 좋을 것 같다는 생각입니다.
이 책의 특장점을 꼽자면 우선, 이 책에서 자주 등장하는 병아리 이미지를 통해 유니티를 학습하는데 필요한 기본 개념이나 기능을 설명해 준 점입니다. 병아리 게임 오브젝트의 형태가 단순해서 더 쉽게, 직관적으로 학습 내용을 이해할 수 있었습니다. 다음으로는 코드에 대해 차근차근 설명해준다는 점입니다. 다른 책들도 마찬가지이겠지만 특히 스크립트 설명 때 코드를 먼저 제시한 후 뒤에 코드 블럭을 나누어 설명을 해주는 점이 좋았습니다. 덕분에 코드를 작성하고, 주석으로 관련 설명을 적으며 예제를 실습하였습니다.
이와 같이 이 책은 쉽고 단순하게 학습을 시작하지만, 책의 마지막 장을 넘길 때는 어느새 내 폰에 게임을 빌드하고 있는 나 자신을 발견할 수 있는 최고의 유니티 자습서였습니다.