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

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎
소문난 명강의 : 레트로의 유니티 게임 프로그래밍 에센스

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

C#으로 배우는 입문부터 4가지 게임

한빛미디어

집필서

절판

  • 저자 : 이제민(레트로)
  • 출간 : 2019-02-20
  • 페이지 : 986 쪽
  • ISBN : 9791162241516
  • 물류코드 :10151
  • 개정판정보 :개정판이 새로 출간되었습니다. 개정판 보기
  • 초급 초중급 중급 중고급 고급
5점 (9명)
좋아요 : 43

소문난 명강사 ‘레트로’가 게임 개발 입문자에게 보내는 선물 같은 책 

 

게임을 만드는 ‘완벽한 준비’를 위해 시간을 낭비하지 마세요. 이 책은 기본을 빠르게 익히고 나서 게임을 직접 만들며 필요한 기능을 알아가는 입문 + 활용서로서 여러분의 시간을 아껴줍니다.

C#을 몰라도, 유니티 엔진을 몰라도 게임을 만들 수 있습니다. C# 입문 + 유니티 에디터 + 실전 게임 개발을 한 권으로 전달하니까요. 또한 아주 낮은 눈높이로 설명하고 차츰차츰 높은 난도의 게임을 완성해나가기 때문에 초보자가 책을 완독하는 데 무리가 없습니다.

 

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

 

상세이미지700.jpg

 

[ 이 책의 특징 ]

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

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

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

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

 

2. 수많은 예시와 그림

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

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

 

3. 올인원 패키지

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

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

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

 

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

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

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

 

5. 4가지 게임 구현

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

  • 탄막 슈팅 게임 - 닷지 (난이도 ★☆☆)
  • 2D 러너 게임 - 유니런 (난이도 ★★☆)
  • 탑 다운 슈터 게임 - 좀비 서바이버 (난이도 ★★★)
  • 네트워크 협동 게임 - 좀비 서바이버 멀티플레이어 (난이도 ★★★)

 

[ 이 책에서 다루는 범위 ]

1. 유니티 에디터

  • 유니티 엔진의 원리를 다룹니다.
  • 유니티 허브와 유니티 에디터를 사용하는 대부분의 방법을 다룹니다.
  • 유니티 2019에 추가된 패키지 매니저를 사용합니다. 

 

2. C# 프로그래밍

  • 프로그래밍 입문에 필수적인 기초를 다룹니다.
  • 유니티 내부에서 사용하는 C# 문법 대부분을 다룹니다.
  • 필수적인 유니티 컴포넌트와 메서드 대부분을 배웁니다.
  • 객체 지향을 이해합니다.

 

3. 애니메이션

  • 유한 상태 머신을 이해하고, 원하는 2D/3D 애니메이션을 재생하는 방법을 배웁니다.
  • 애니메이션 블렌딩, IK를 사용해 기존 애니메이션 클립을 변형하는 방법을 배웁니다.
  • 2D 애니메이션을 직접 만듭니다.

 

4. 벡터 수학

  • 공간과 위치, 방향을 표현하는 데 필요한 수학적 지식을 배웁니다.
  • 쿼터니언을 사용하는 방법을 배웁니다.

 

5. 유니티 UI(UGUI)

  • UGUI를 이해하고 사용하여 게임 UI를 만듭니다.
  • UI 레이아웃을 구성하는 방법을 이해합니다.

 

6. 아트

  • 머티리얼, 라이팅, 글로벌 일루미네이션 등을 이해합니다.
  • 후처리 효과를 이용해 게임 화면에 아름다운 영상미를 주는 방법을 배웁니다.

 

7. 디자인 패턴

  • 기초적인 디자인 패턴을 배웁니다.
  • 이벤트 주도 방식을 이해하고 사용합니다.

 

8. 네트워크

  • 서버, 로컬, 동기화 등 네트워크 게임 개발에 필요한 개념을 이해합니다.
  • 포톤을 사용하여 멀티플레이어 게임을 만듭니다.

 

9. 그외

  • 시네머신으로 카메라 자동 추적을 구현합니다.
  • 게임 속 AI를 구현합니다.
  • 안드로이드, iOS 모바일 빌드 방법을 배웁니다.

 

[ 이 책의 구성 ]

이 책은 총 7부로 구성되어 있습니다.

1부와 2부는 유니티와 코딩을 당장 이해하는 데 필수적인 핵심을 빠르게 배웁니다. 실습 프로젝트를 진행하는 3부, 5부, 6부는 장르별로 게임을 하나씩 완성하면서 실습을 통해 이론을 이해합니다. 실습 프로젝트에서는 기존 지식으로 해결할 수 없는 문제를 새로운 방법으로 돌파하는 방식으로 진행합니다. 4부는 비전공자 입장에서 게임 개발에 필요한 수학적 기반을 배웁니다. 7부는 멀티플레이 게임 구현을 배우고, 부록에서는 모바일 빌드에 대해 알아봅니다.

 

1부 : 유니티 준비하기

유니티를 준비하고, 유니티 동작 원리와 인터페이스를 배웁니다. 유니티 개발 환경을 준비하고 맛보기 프로젝트를 만듭니다. 게임 오브젝트와 컴포넌트의 원리와 동작을 이해합니다. 게임 엔진의 구조와 개발 방식을 이해합니다.

 

2부 : C# 프로그래밍

왕초보자 입장에서 C# 프로그래밍과 객체 지향을 배웁니다. 코딩 원리와 객체 지향을 즉시 이해할 수 있는 그림 예시로 설명합니다. C# 스크립트를 직접 작성하면서 필요한 대부분의 C# 문법을 익힙니다. 1부에서 살펴본 유니티의 동작 원리가 C#의 객체 지향과 어떻게 맞물리고, 스크립트가 어떻게 게임 오브젝트와 컴포넌트를 통제할 수 있는지 이해합니다.

 

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

3D 탄알 피하기 게임을 만듭니다. 키보드 조작으로 공을 굴리는 작은 예제에서 시작하여 탄알, UI, 게임 매니저를 만들고 최종 빌드까지 게임 완성에 필요한 모든 부분을 진행합니다. 또한 주기적으로 탄알 생성을 반복하는 방법, 점수를 저장하는 방법을 배웁니다. 플레이어의 입력을 받아 힘과 속도를 제어하는 방법을 배웁니다. 입력 매니저와 시간 간격 같은 기초 개념이 꼭 필요한 이유를 현실 사례로 설명합니다.

 

4부 : 공간

공간, 속도, 회전을 통제하기 위한 선형대수를 배웁니다. 벡터 수학, 지역 공간과 전역 공간, 회전에 사용되는 쿼터니언을 배우게 됩니다. 비전공자와 선형대수를 따로 공부할 여유가 없는 개발자를 위해 복잡한 증명 과정은 직관적이고 간결한 그림으로 대체했습니다. 또한 수학적 지식을 이론이 아닌 실제 코드를 통해 사용법 위주로 빠르게 이해합니다.

 

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

발판이 무한 랜덤 생성되는 2D 러너 게임을 개발합니다. 2D 애니메이션을 만드는 방법, 캐릭터의 상황에 따라 적절한 애니메이션을 재생하는 방법을 배웁니다. 오브젝트 풀링을 구현하여 배경과 장애물을 무한 반복 배치하는 방법을 배웁니다. 또한 디자인 패턴 중 하나인 싱글턴을 직접 구현하고 사용합니다.

 

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

몰려오는 인공지능 좀비들을 총으로 쏘는 탑다운 슈터 게임을 제작합니다. IK와 애니메이션 마스크를 구현합니다. 점수와 인공지능 적 소환 시스템과 인게임 UI를 만듭니다. 유니티의 내비게이션 시스템을 사용하여 인공지능을 구현하며, 레이캐스트로 정확한 탄알 충돌을 구현합니다.

C# 인터페이스, 이벤트, 람다 표현식을 사용하여 플레이어와 인공지능 적의 대미지 처리 코드를 간결하게 줄이는 방법을 배우게 됩니다. 후처리를 사용하여 영상미를 구현합니다.

 

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

싱글플레이어 전용 좀비 게임을 멀티플레이어 협력 게임으로 포팅합니다. API와 상관없이 모든 종류의 네트워크 게임에 공통적으로 필요한 이론을 배웁니다. 포톤을 사용해 로비와 매치메이킹 시스템, 플레이어 사이의 동기화를 구현합니다. 동기화 절차와 클라이언트와 호스트, 로컬과 리모트, 조작 권한을 배웁니다.

 

부록

 

 

[ 추천사 ]

 

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

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

 

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

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

 

“유니티에 처음 입문하는 사람도 쉽게 이해하며 따라 할 수 있어서 좋았습니다. 기초 정보를 학습하고 나서 4가지 게임을 개발하면서 유니티 엔진을 명확히 이해하게 되었습니다. 세심한 코드 설명으로 C#도 자연스럽게 익힐 수 있었습니다. 유니티를 책 한 권으로 끝내고 싶은 유니티 입문자 및 게임 개발자에게 이 책을 강력히 추천합니다.”

_문주현 / 알리미프로, 안드로이드 개발자

 

“이 책은 유니티로 실제 게임을 구현하면서 유니티에 대한 이해와 게임 제작 방법을 익히게 도와줍니다. 특히 많은 그림으로 기본 개념을 쉽게 설명하고 있어 유니티를 처음 배우거나 게임 개발 프로세스를 알고 싶은 입문자에게 많은 도움을 줄 거라 생각합니다.”

_이민우 / 스마일게이트, 클라이언트 개발자

 

“하나하나 따라 하다 보면 어느새 게임이 완성되고, 중요한 핵심을 파악할 수 있는 구성이 좋았습니다. 유니티 입문하기에 아주 좋은 책입니다.”

_Darkttd / 전직 게임 개발자

 

“이 책은 단순히 따라 하면서 그럴듯한 게임을 만드는 것으로 끝이 아니라 기초부터 개념을 다지면서 유니티 각각의 기능을 설명해줍니다. 그래서 이 책을 읽고 나면 누구든 자신만의 게임을 유니티로 구현할 수 있게 될 겁니다.”

_이수연 / 경희대학교 게임 제작 동아리 retr0 소속

 

“유니티 트레이너 중에서도 가장 왕성히 활동하고 계신 제민 님이 오랜 기간에 걸쳐 집필하신 책입니다. 기초부터 실제 게임이 유니티 엔진에서 어떻게 돌아가는지 제대로 배워 자신감을 얻게 될 겁니다.”

_고양이매니저 / 독립 게임 개발자

 

“초보자도 정독하면 자신만의 게임을 만들 수 있게 하는 마법과 같은 책입니다. 무엇보다 게임을 만드는 과정에서 게임의 로직과 동작 방식을 일목요연하게 파악할 수 있어 큰 도움이 됩니다. 만약 유니티를 어떻게 시작해야 할지 망설이는 개발자가 있다면 이 책이 그 방향을 알려줄 겁니다.”

_김종욱 / 네이버, 서버 및 시스템 개발자

 

“게임 개발은 매우 흥미로운 영역입니다. 그러나 소프트웨어 개발자도 게임 개발은 어떻게 시작해야 하는지 막막한 경우가 많습니다. 이 책은 전공자가 아니라도 게임 개발에 입문할 수 있는 길잡이 역할을 해주고 있습니다. 특히 멀티플랫폼에서 동작하는 유니티를 기반으로 하므로 추후 확장성이 무궁무진합니다. 게임 개발에 관심이 있었다면 이 책을 펼치길 추천해드립니다.”

_서준수 / LG전자, 안드로이드 개발자

 

유니티 게임을 안드로이드와 iOS로 빌드하는 방법을 배웁니다.

이제민(레트로) 저자

이제민(레트로)

수천 명의 유료 온라인 수강생을 가진 게임 개발 트레이너입니다. 또한 유니티 코리아의 인증을 받아 유니티 마스터로 선정되었습니다. 해외 온라인 강의 플랫폼 유데미(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 Gun 스크립트

15.4 슈터 만들기

15.5 마치며

 

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

16.1 다형성

16.2 LivingEntity 기반 클래스

16.3 플레이어 체력 UI

16.4 PlayerHealth 스크립트

16.5 내비게이션 시스템과 좀비 준비

16.6 Enemy 스크립트

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 빌드

<소문난 명강의> 시리즈 소개

이 시리즈는 단기간에 실무 능력을 갖추게 도와줍니다. 유튜브, 블로그, 학원, 대학 등에서 이미 검증된 강의 본연의 장점을 극대화하고 더 체계화해 책으로 담았습니다. 입문자 눈높이에서 설명하고 작고 실용적인 프로젝트를 수행해 실전 능력을 키워줍니다. 빠르게 개발 능력을 키우려는 입문자와 더 다양한 경험을 쌓으려는 기존 개발자에게 유용합니다.

 

이 책의 모태 소문난 명강의 ‘retr0의 유니티 게임 프로그래밍 에센스’ 소개

이 책의 모태인 소문난 명강의 「retr0의 유니티 프로그래밍 에센스」는 저자가 유튜브 채널 retr0와 온라인 강의 사이트에 공개한 유니티 프로그래밍 강의 시리즈입니다.

 

동아리 구성원에게 도움을 주고자 유튜브에 업로드한 강좌가 이제는 많은 구독자를 보유한 인기 강좌로 자리 잡게 되었습니다. retr0 유튜브에는 「프로그래밍 기초 시리즈」, 비디오 하나로 개발 시작부터 프로그램 완성까지 다루는 「한방에 개발하기 시리즈」, 이외에 다양한 장르의 게임 개발이나 머신러닝 튜토리얼이 업로드됩니다.

 

 - 유튜브 retr0 : www.youtube.com/c/JeminDEV

 

또한 온라인 강의 플랫폼 유데미에 제공한 유료 강좌는 유데미에서 전 기간 가장 많이 팔린 한국어 강의 1위 자리를 지키고 있습니다. 유데미와 인프런의 유료 강의는 즉흥적인 개발보다는 순서대로 학습할 수 있는 커리큘럼을 담고 있습니다.

 

 - 유데미 retr0 : www.udemy.com/retr0-unity/

 - 인프런 retr0 : www.inflearn.com/course/유니티-게임-프로그래밍-에센스

 

이 책의 모태는 retr0 강좌지만 기존 비디오의 텍스트 버전이 아닌, 새로운 내용과 새로운 예제로 책을 썼습니다. 동영상 강좌와 정돈된 책은 정보를 제공하는 방법이 다르므로 서로 상호보완적입니다.

 

따라서 이미 온라인 강좌로 유니티 개발 방법을 학습하셨더라도 요약되고 정돈된 개발 정보를 제공하는 이 책이 도움이 될 겁니다. 그 반대로 이 책을 보셨더라도 저자가 제공하는 동영상 강좌가 도움이 될 겁니다.

 

 

이제껏 게임을 한 번도 짜보지는 못했지만, #프로그래밍 배우기 시작한 초기부터 지금까지 꼭 한 번은 내가 짠 스토리와 아이디어, 캐릭터 등을 고스란히 담은 게임을 만들고 싶다는 생각은 변함없다. 그래서 드문드문 틈이 나면, 게임 관련 책을 보곤 했는데, 잊을 만하면 보다 보니, 머리에 남은 게 그리 많지 않고, 항상 리셋이 되는 느낌이다. 그런데 게임은 아니지만, 앞으로 프로그램 개발에 쓸 일도 있고 해서, 미리 공부하는 차원에서 다시 #유니티 책을 보게 되었다.

 


 

#유니티엔진, 유니티 #UNITY 이란 단어는 #게임개발 에 관심이 있는 사람이면 다들 잘 알 것이다. 그만큼 게임 프로그램에 특화된 막강한 성능의 툴이다. 유니티 엔진은 PC, 윈도우, 리눅스, 애플, 모바일, 콘솔 등 다양한 플랫폼을 지원하고, 게임 개발에 쓰이는 밑바닥 코딩의 수고를 덜어, 게임 개발 초보도 쉽게 만들 수 있고, 좀 더 스토리에 집중해서 만들 수 있게 돕는다.

 


 

나 역시 게임에 관해서는 #초보자 와 마찬가지다 보니, 전반적으로 유니티를 다시 공부할 필요가 있어, 대학에서 #교재 로도 사용되고 있고, 시중에 평가가 좋은 '레트로의 유니티 게임 프로그래밍 에센스'를 보게 되었다. 이 책은 올 초에 나와 유니티 2021, 2022 최신판의 내용을 담고 있고, 깃허브를 통해 주기적으로 유니티 버전 업그레이드에 따른 변화된 내용을 그때 그때 반영하고 있다. 최신 버전 반영이 중요한 이유는 구 버전으로 된 책으로 공부하다 보면, 버튼 찾다 시간 낭비할 수 있고, 예제 코드가 제대로 작동되지 않을 수 있기 때문이다. 전에 이런 경험을 여러 번 해봐서, 나 역시 잘 안다. 초보 입장에서는 더욱 혼란스럽고, 원인을 몰라 당황하게 만들어, 유니티 공부의 의욕을 떨어트릴 수 있다. 그러므로 #레트로의유니티게임프로그래밍에센스 개정판이 그런 문제를 줄일 수 있는 것이다.

 


 

'레트로의 유니티 게임 프로그래밍 에센스'를 처음 접하게 된 사람들은 찾아보기 포함 1071쪽에 달하는 두꺼운 두께의 책 부피에 이걸 언제 공부하나 걱정이 될 수도 있다. 나도 책을 들고서는 이거 베개로 딱인데 하는 생각을 했다. 하지만 그만큼 유니티에 관한 많은 것을 배울 수 있다는 소리다. 실제 이 책을 보면서, 유니티 전반을 꿰뚫어 설명하는 내용들에 괜히 흥분감도 들었다. 모르는 것을 알게 되면서 생기는 그런 희열 말이다.

 

이 책 한 권으로 유니티와 C#을 다 익힐 수 있다. PC 프로그램 외에 안드로이드와 iOS 모바일 빌드 하는 방법도 나오며, 게임 인공지능 AI를 다루는 부분도 배운다. 네트워크를 사용하는 멀티플레이어 게임도 익히게 된다.

 


 

총 4가지 게임을 만들며 유니티를 배우는 데, 간단한 슈팅게임부터 시작해서, 닌텐도 마리오처럼 점프하고 달리는 게임, 총을 쏴서 좀비를 맞추는 게임, 좀비 서바이벌 게임을 하게 된다. 게임들이 현재도 가장 많이 사랑받는 유형들이라, 게임 개발에 기본을 배우는데 도움이 되는 것들이다.

 


 

그리고 부록편에는 추가 콘텐츠를 유연하게 관리하고 배포하는데 쓰이는 어드레서블 시스템이 큰 비중으로 다룬다. 어드레서블 시스템은 솔직히 처음 보는 것인데, 어떻게 사용해야 하는지 아직 제대로 표준화되어 있지 않은 것을 저자가 전문가로서 구체적인 가이드를 제시하고 있기까지 하다.

 

그러고 보니, 게임에서 빼놓을 수 없는 것이 수학의 벡터다. 중고딩들이 수학 배워서 어디다 써먹냐는 소리를 많이 하는데, 너희들 좋아하는 게임에 쓴다고 말하면 딱이다. 학창 시절 배운 수학과 물리 다 쓰이고, 이젠 인공지능까지 많이 쓰이게 되었다. 벡터에 대한 이해는 중요하므로 역시 책에서 다루고 있다.

 

'레트로의 유니티 게임 프로그래밍 에센스'는 확실히 두꺼운 값어치를 한다는 책이다. 이 많은 것들을 책에 다 담은 것을 보면, 이제민 저자는 욕심이 많거나, 완벽주의자인지도 모르겠다. 저자에 대해서 잠깐 소개하면, 유니티 코리아의 인증을 받은 유니티 마스터이며, 강의 플랫폼 유데이에서 평점과 판매량도 가장 높은 한국어 강의로 알려져 있는 실력 있는 분이다.

 


 

이렇게 많은 내용을 다루니 어렵지 않을까 지레짐작할 수 있는데, 보면 알겠지만, 겁먹을 필요 없다. 초보와 비전공자를 위해 많은 부분 풀어 해설하고, 그것도 안되면, 700장 이상의 그림이나 일러스트로 설명을 하고 있고, 유니티 에디터 곳곳을 캡처하여 과정별로 보여주고 있어서, 중고등학생도 이해하는데 어렵지 않을 것이다.

 


 

유니티에서는 스크립트 언어로 C#을 쓰고 있는데, C#을 이미 쓰고 있는 분은 더욱 쉽게 접은 할 수 있기는 하지만, 그렇다고 자만해서는 안된다. 나 역시도 C#을 주력으로 쓰고는 있지만, 유니티를 배울 때는 스크립트 코딩도 중요하지만, 공부할수록 능숙하게 유니티 에디터 사용할 수 있어야 한다는 생각이 든다. 그렇게 되기까지 책을 보며 많은 연습이 필요할 것이다. 눈으로만 봐서는 안된다. 개발자에게 백문이 불여일타라는 소리가 있듯이 키보드로 직접 쳐봐야 제대로 알 수 있는 것이다.

 


 

'레트로의 유니티 게임 프로그래밍 에센스'가 유니티 전반을 꿰뚫고 있다 보니, 부피가 두껍다고 말했는데, 아주 고맙게도 가운데를 쪼개면 2권으로 나눠 가지고 다닐 수 있게 제본이 되어 있다.

 

게임 개발에 유니티 엔진이 유명하지만, 최근에는 #가상현실 이나 #증강현실 에서도 사용되고 있고, 이젠 #메타버스 까지 그 영역을 넓히고 있는 중으로 알고 있다. 날이 갈수록 유니티의 활용 영역이 넓어지고 있는 것이다. 게임 개발자를 꿈꾸는 분뿐만 아니라, 좋은 아이디어를 가지고 있는 분에게는 유니티가 좋은 기회가 되어 줄 것이다.

 

이번 '레트로의 유니티 게임 프로그래밍 에센스'를 통해 유니티에 관한 많은 것을 알게 되었다. 책 내용이 단순한 사용법 위주가 아니라, 유니티 개발 환경 전반에 대한 개념 이해를 돕고 있어, 기초 개념을 확고히 잡을 수 있었다. 이 책이 왜 소문난 명강의 시리즈에 들어 있는지 느낄 수 있었다. 유니티를 배우고자 하는 분에게 강력히 추천하는 #유니티교재 다.

 

1220724.jpg

 

 

남녀노소 불문하고 게임을 좋아합니다.

 

젊은 유저층이 게임을 주로 했지만, 스마트폰과 캐주얼 게임의 등장으로 전 연령대가 게임을 하고 있습니다.

 

비전공자도 게임을 개발하고 싶다면 개발을 도와줄 책을 소개해드리려 합니다.

 

소개해 드릴 책은 '레트로의 유니티 게임 프로그래밍 에센스 개정판’입니다.

 

일러스트와 자세한 설명을 넣기 위해 책을 2권으로 분량으로 만들었습니다.

 

비전공자라도 게임 개발을 쉬운 난이도부터 차례대로 만들 수 있게 도와줍니다.

 

4가지 게임을 유니티를 통해 만들어 볼 수 있는데요.

어떤 책인지 같이 살펴보도록 하겠습니다.

 

 

2220724.jpg

 

 

◆ 비전공자와 입문자를 위한 책

어려운 개념은 풀어 설명해도 이해가 안 될 수 있는데요.

쉬운 예시와 650장의 그림을 통해 입문자의 이해를 도와줍니다.

 

개발을 배우면 보통 프로그래밍을 배웁니다.

 

프로그래밍 지식을 어느 정도 갖추고 게임 개발을 시작합니다.

 

게임 개발은 프로그래밍 지식과 UI, 모바일, 후처리, 수학적 지식이 필요합니다.

 

프로그래밍 입문과 게임 엔진 입문을 동시에 하고 싶어 하는 분들에게 적합한 책입니다.

 

 

3220724.jpg

 

 

◆ 게임 개발의 흐름

게임 개발은 직접 구현하려면 개발할 게 많습니다.

 

직접 개발 한다면 캐릭터의 움직임, 맵, 적, 아이템 등을 직접 구현해야 하는데요.

유니티 엔진을 사용하면 비전공자도 좀 더 쉽게 게임을 만들 수 있습니다.

 

게임 오브젝트를 만드는 것부터 유니티 엔진으로 게임 개발하고 싶은 입문자에게도 쉽게 설명되어 있습니다.

 

게임 개발 지식이 없어도 게임이 어떤 흐름으로 개발되는지 감을 잡게 될 것입니다.

 

게임 개발뿐만 아니라 C# 프로그래밍과 개발에 필요한 요소들도 같이 배울 수 있습니다.

 

유니티의 인터페이스부터 엔진 동작 원리까지 따라 하다 보면 게임을 만들고 있는 모습을 보고 계실 겁니다.

 

 

4220724.jpg

 

 

끝으로 이 책의 모든 예제는 유니티 2021년 2월 버전으로 제작됐습니다.

 

2022년 호환을 위한 별도 가이드도 제공해줍니다.

 

쿠키런 게임이 인기를 끌었던 적이 있는데요.

C#과 유니티를 모르는 사람도 이 책을 따라가다 보면 2D 러너 게임을 만들 수 있습니다.

 

게임을 만들어 보고 싶은 비전공자도 쉽게 게임을 개발할 수 있도록 알려줍니다.

 

게임을 개발하고 싶은 분들에게 이 책을 추천합니다.

 

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

 

레트로의 유니티 게임 프로그래밍 에센스. 책을 받기 전에도 대략적으로 페이지 수를 보고 두께를 가늠하기는 했는데 실제로 책을 받아 보니, 보자마자 두께를 보고 놀라지 않을 수가 없다.

 

1.jpg

 

보기에도 두꺼운 이 책은 다행스럽게도 보는 사람을 고려해서 두 권으로 분권할 수 있도록 만들어져 있었다.

 

2.jpg

 

그렇다. 사실은 두 권이다. 반을 잘라서 책등이 보기 싫게 되지 않고 아주 깔끔하게 1권과 2권으로 나눠진다. 속 표지가 있어서 분권이 가능하다고 해도 책등은 보기 싫게 반이 갈리는 경우가 많았는데, 책을 펼쳐보기도 편하고 들고 다니기도 편하게(물론 분권이 되었다고 해도 가볍고 얇은 것은 아니지만) 만들어져 있어서 이 부분이 참 만족스러웠다. 완벽하게 두 권으로 나눠서 볼 수 있다는 게 이 책을 보자마자 와닿는 장점이었다.

 

3.jpg

 

11페이지쯤 가다 보면 이 책의 특징이 나온다. 이 책은 유니티는 물론 프로그래밍에 대한 지식이 전혀 없는 비전공자를 대상으로 한 책이다. 그래서 엄청 자세하게 되어 있다. 지금까지 여러 권의 유니티 책을 보았지만 먼가 찜찜하고 개운치 못한 부분이 있었던 사람에게도 추천한다. 비전 공자 대상이며 C#을 기준으로 설명이 되어 있어 C#을 배우고 싶은 사람도 C#을 배우면서 동시에 유니티까지 배우는 일석이조의 효과의 책이다.

 

4.jpg

 

이 책에서는 총 4가지 게임을 만드는 방법을 알려준다

 

1. 탄막 슈팅 게임, 난이도 별★개

 

2. 러너 게임, 난이도 별 ★★개

 

3. 탑다운 슈터 게임, 난이도 별 ★★★개

 

4. 네트워크 협동 게임, 난이도 별 ★★★개

 

3번과 4번은 같은 게임인데 3번의 게임을 멀티플레이 용으로 만든 것이 4번이다.

 

 

책의 진행은 당연히 유니티를 설치하는 것부터 엔진의 각 기능에 대한 설명으로 시작된다.

 

5.jpg

 

책이 두꺼운 만큼 이런 거까지 설명해 줘?라는 생각이 들 정도로 자세히 설명이 되어있다.

 

1부 1~3장까지는 유니티 준비하기로 설치부터 엔진에 대한 설명까지 내용이 주로 있다 여기까지만 무려 120 페이지 그냥 가볍게 읽어준다.

 

2부부터는 C#에 대한 기초 설명으로 시작하는데 기존에 전공자라면 복습을 비전공자라면 어렵지 않으니 천천히 따라 하면 된다.

 

6.jpg

 

마치 프로그래밍 언어 관련 책에 나올법한 이미지다. 

 

나는 유니티로 게임을 만들고 싶은데 왜 이리 쓸데없는 내용이 많아라고 생각될 즘이면,

 

7.jpg

 

해당 내용들이 게임을 만들 때 어떻게 사용되게 되는지 예시도 나온다.

 

이렇게 TMI 같은 앞부분의 내용을 잘 참고 지나가면, 약 200페이지 분량이다.

 

드디어 상자를 점프할 수 있게 된다.

 

8.jpg

 

기존의 한 권으로 되어있는 다른 책을 보고 따라 하면서, 따라 하면 되긴 되는데 왜 되지?라는 의문을 가졌다면 이 책에서는 그 의문이 조금이나마 더 해결될 것이다.

 

이전에 유니티를 공부하고 싶었거나, 어려워서 공부를 하다가 포기를 한 적이 있었다면 이번 기회에 이 책을 활용하여 다시 한번 도전해 보는 것도 좋을 것 같다.

 

 

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

 

택배를 뜯어보고 깜짝 놀랐다. 책이 백과사전 마냥 두꺼웠다. 위 사진처럼 <레트로의 유니티 게임 프로그래밍 에센스>는 두 권으로 분리가 가능하다. 1권에는 1부~4부의 내용이, 2권에는 5부~7부의 내용이 들어있다

책을 후루룩 넘겨보니 이미지도 많고 텍스트와 코드도 잘 정돈되어있어서 든든한 지원군을 얻은 기분이었다. 물론 이걸 처음부터 다 읽을 수는 없고 목차를 보고 그때 그때 필요한 부분을 찾아보기에 좋다는 소리다.

 

요새 깃허브(GitHub: 주로 소스 코드를 저장하는 웹사이트)에서 여러가지 오픈소스들을 다운받아 사용하는 입장에서 책에 쓰여있는 코드를 하나 하나 다시 입력하는 게 아니라 예제 압축 파일을 다운로드받을 수 있다는 점도 이 책의 장점이었다. 본격적인 내용에 들어가기 앞서 이 책에는 2019년 1월 버전으로 제작된 예제들에 대해서도 향후 유니티 버전과 관련해 깃허브에 해결 방법을 안내하겠다고 나와있었던 점이 <레트로의 유니티 게임 프로그래밍 에센스>에 대한 신뢰도를 더욱 높여주었다.

 

요새는 영상으로도 튜토리얼이 많이 나와있지만 개인적으로 두고 두고 볼 수 있는 텍스트로 정리된 튜토리얼이 있으면 좋겠다고 생각했다. 이건 꼭 유니티에 국한되지 않고 다른 프로그램을 다룰 때도 마찬가지였다. 영상을 다 보기에는 지루한 감이 있기도 하고... 구글에 검색해가며 학습을 했었는데 꼼꼼하게 정리된 것이 아닌 경우에는 오류가 발생할 가능성이 높았다. 하지만 이 책에서는 코드뿐만 아니라 유니티 화면에서 어떤 어떤 버튼을 눌러야하는지, 정확하게 어떤 수치를 입력해야하는지에 대한 설명과 함께 구현 원리에 대해 꼼꼼하고 정확하게 설명해주고 있어서 이해하기가 훨씬 쉬웠다.

당분간은 또 다른 프로젝트가 있으니 주변에 유니티 책이 필요하다는 후배들, 친구들과 돌려보려고 한다. 책값은 어마무시하지만 학과 차원이나 동아리 차원에서 하나 구비해두면 두고 두고 도움이 될 만한 책이기에 여러모로 추천하는 바이다.

 

유니티가 어떤건지 공부하기 위해 책을 한권봤다. ‘레트로의 유니티 게임 프로그래밍 에센스’라는 책인데 정말 마음에 드는 책이다. 저자는 유튜브, 유데미 강의를 한 경험을 바탕을 책을 썼다고 한다. 그래서 그런지 우리가 게임 개발에 대해 뭘 궁금해 하는지 알고 글을 쓴 것 같다. 유니티에서 제공하는 튜토리얼과는 다른 느낌이 있는 책이다. 한글로 되어 있어서 편안하게 읽을 수 있었다. 유니티 초보뿐만 아니라 프로그래밍 입문자들도 읽을 수 있는 수준의 책이다. 설명을 최대한 쉽게 하려는 노력이 이 책 여기저기서 보인다. 책 두께는 엄청 굵지만 내용이 쉽고 사진이 많아서 따라하다 보면 금방 끝까지 볼 수 있다. 개발자라면 객체지향처럼 아는 내용을 휙휙 넘기면서 본다면 더 빨리 마스터할 수 있을 것이다. 

 

‘레트로의 유니티 게임 프로그래밍 에센스’는 크게 2부분으로 나눌 수 있다. 유니티 개발 기초를 배우는 부분과 게임을 직접 만들어보는 부분으로 구분된다. 모든 이론을 다 배우고 개발을 하는 것이 아니다. 어느 정도 기초를 배우고 난 후 게임을 만들면서 게임 개발에 필요한 내용을 배운다. 이렇게 배우는 내용으로는 수학 벡터, 네트워크 이론 등이 있다.

 

1장부터 5장까지는 유니티의 기초 중 기초다. 유니티가 뭔지, 유니티 설치하는 방법, 에디터 유니티로 어떻게 개발하는지, C# 프로그래밍 언어로 어떻게 코딩을 하는지 배운다. 개발 경험이 없다면 이 부분도 조금 어렵겠지만 유니터 개발화면을 모두 캡쳐해서 보여주고 있어서 따라하기에 큰 문제가 없을 것이다. 이 책의 거의 모든 내용을 따라 해봤는데 버그나 오류는 없었다.

 

이 책에서는 총 4개의 게임을 만든다. 탄막게임 닷지, 2D 러너 게임 유니런, 탑 다운 슈터 게임 좀비 서바이버, 네트워크 게임 좀비 서바이버 멀티플레이어. (정확히 말하면 3개의 게임을 만든다고 볼 수 있다.) 유니티 게임 개발 방법을 설명하기 위해 만든 것인데 정말 잘 만든 구성이라 생각한다. 게임을 만들면서 키보드 조작, 2D 게임 제작방법, 인공지능, UI, 충돌 처리, 영상처리, 네트워크 게임 제작 등을 배울 수 있다. 다른 프로그래밍 책을 본 사람이라면 여기서 만드는 게임의 퀄리티가 얼마나 괜찮은지 알 것이다. 조금만 변경해서 앱스토어에 올리고 싶은 마음이 생길지도 모르겠다.

 

‘레트로의 유니티 게임 프로그래밍 에센스’를 보며 이제는 혼자서도 게임을 만들 수 있겠다는 생각을 했다. 유니티는 게임 개발은 기본적으로 무료다. 사용자가 많이 늘어나면 유료로 사용해야 한다. 유니티 게임 개발에 필요한 것은 아이디어와 개발에 대한 열정이 아닐까 싶다. 일단 간단한 B급 정서 B급 게임을 하나 만들 생각이다. 이 책에 있는 내용만으로도 간단한 게임은 쉽게 만들 수 있을 것 같다. 초보자가 게임 개발을 위해 게임엔진을 고민하고 있다면 유니티가 좋을 것이다. 그리고 유니티를 공부하기로 마음 먹었다면 일단 ‘레트로의 유니티 게임 프로그래밍 에센스’부터 볼 것을 추천한다. 마음에 드는 책이다.

 

 

 내가 Unity를 처음 접하기 시작했던 건, 2012년 Imagine Cup 준비할 때였다. 그때 마침 Kinect 프로그래밍을 할 수 있는 Unity Asset을 준다고 해서, 프로그래밍을 잘 몰랐던 그때 입장에서는 진짜 막막해서 책도 이것저것 사보고 그랬던 기억이 있다. 그런데도 지금도 살펴보면 알아야될게 너무나 많다. 단순히 C#이나 Javascript만 가지고 프로그래밍만 하면 될게 아니라, 캐릭터모델도 생각해야 되고, 카메라 뷰도 고려해야 한다. 더구나 모델 역학도 들어가 있어, 이를 위한 수학적 지식도 알고 있어야 한다. 뭔가 게임을 개발하는데 있어 알아야 할게 많지만, 그래도 그나마 이를 쉽게 해주는 툴이자 프레임워크가 Unity가 아닐까 싶다. 더구나 최근에는 인공지능을 공부하는데 있어서 활용할 수도 있어, 그 활용 범위가 넓다고 볼 수 있다.

 아무튼 최근에 읽게 된 책은 원래 인터넷 강의 기반의 내용을 정리해서 펴낸 "유니티 게임 프로그래밍 에센스"라는 책이다.

 

retr0의 유니티 게임 프로그래밍 에센스

 

 알고 봤더니 이 책을 쓰신 분은 내가 자주 강의를 듣는 udemy라는 사이트에서 게임 관련 강의를 하시는 분이셨다. 사실 나도 현업 관련 강의만 수강하다가 딱 한글로 되어 있는 강의가 있어, 언젠가 한번은 들어봐야겠다 생각만 하고 있었는데, 이 책이 그런 강의에서 핵심만 추려서 새로운 예제로 다시 내용을 정리한 것이라는 것을 알았다. 그래서 책의 서두에도 언급되어 있는 내용이기도 한데, 강의와 책을 병행해서 들으면 좋다고 한다.

유니티 게임 프로그래밍 에센스 소개 영상

 간략하게 책 소개를 하자면, 구성은 총 두 권으로 되어 있으며, 책의 분량도 위 사진에서 보이는 것과 같이 꽤나 방대한 양을 담고 있다. 그래서 1권에서는 간단한 게임 구현을 통해서 개발에 필요한 기본지식들, 예를 들어 Unity의 전반적인 UI구조와 화면 구성, 그리고 물리 규칙 등을 소개하고 있다. 그래서 여기서 배운 내용을 기반으로 2권에 나오는 두가지 게임을 더 만들어보고, 마지막 게임인 좀비 서바이버 게임에 멀티플레이어 기능을 추가하는 것으로 마무리된다. (개인적으로는 좀비 서바이버 게임은 정말 게임답게 구현되어 있어, 독자들의 흥미를 끌 수 있을거라 생각한다.)

 

유니티 게임 프로그래밍 에센스에서 다루는 게임들

 

 그렇다고 정말 전체 완성된 코드만 딱 보고 따라치는 형태가 아니라, 하나씩 필요한 기능을 구현해보면서 진행되어 학습에 있어 직관적으로 되어 있다. 예를 들어 책에 있는 예를 그대로 가져오자면, 만약 PlyaerController 컴포넌트를 설정하는 과정이 필요하다고 하면, 첫번째로 Player게임 오브젝트에 추가하고, RigidBody를 할당하고, 테스트하는 등의 일련의 과정이 필요한데, 책에서는 이 하나 하나의 과정을 잘게 쪼개 진행하는 방식을 취했다. 어떻게 보면 글을 읽으면서도 마치 온라인 강의를 듣고 있는듯한 느낌이 들었다. 어쩌면 앞에서 언급했던 바와 같이 강의와 더불어 학습할 수 있는 리소스가 풍부하다는 점은 다른 유니티 관련 서적과 차별화를 둘 수 있는 포인트가 아닐까 하는 생각을 해본다.

 다만 독자에 따라서는 책 분량 만큼이나 큰 가격(60000원)이 부담이 될 수 있을거 같다. 또한 비전공자와 전공자를 함께 아우르기 위해 책의 내용들이 평준화되게 작성되는 부분이 있어, 뭔가 수준있는 테크닉이나 지식을 찾는 사람한테는 약간 어울리지 않을 수 있다. 그래도 한 권의 책에서 Unity의 특정 기능을 알고 싶다, 그런 기능을 활용해서 뭔가를 개발해보려는 사람한테는 이 책이 적합하다고 본다. 

 내가 이 책을 선택하게 된 이유도 사실 Unity나 그런 전문적으로 게임을 개발하려는 것은 아니지만, Unity에서 배포하는 강화학습 툴인 ML-Agent를 좀 다뤄보고 싶어서였다. 그래서 게임 개발과 관련된 것보다도 안의 구조가 어떤식으로 되어 있는지 궁금해서였는데, ML 환경을 구성하고 이해하는데 있어서는 적어도 이 책이 커버하는 범주 안에 있어 도움이 되었다. 물론 강의나 외부 리소스를 전부 활용해보진 못했지만, 책을 읽으면서도 "아 나도 이런 게임 가지고 저런 게임 만들고 싶다" 라는 생각이 많이 들게 하던 책이었던 것 같다.



출처: https://talkingaboutme.tistory.com/973 [자신에 대한 고찰]

KakaoTalk_20190331_215642405.jpg

 

 

 

그래픽 프로그래밍을 공부하는 학생이라면 유니티를 알고 있을겁니다.

얼마나 대단하길래 사람들이 유니티에 열광하는지 궁금하여 이 책을 보게 되었습니다.

그리고 1부 1장을 시작하였습니다.

 

001.jpg

 

설치부터 실행까지 약 30분 정도가 걸렸습니다.

예제대로 큐브 하나를 만들고 중력을 적용시켰으며,

바닥을 만들어놓고 프로그램을 실행시켜보았습니다.

여기까지 느낀 기분은....허탈하다는 것이였습니다.

그래픽스 프로그래밍을 공부하는 학생으로써 화면에 창을 만들고

삼각형 하나 출력해보기까지 여러가지 과정을 거쳤어야 했습니다.

그래픽 API 초기화 시키고 버텍스버퍼 만들고 등등...

프로그래머 유영천님께서 포프님 방송에서 농담삼아 하신 얘기가 있으셨습니다.

"유니티가 게임업계를 망쳐놓았다"

어떤 말씀이였는지 직접 사용해보니 체감했습니다.

기존에는 그래픽 프로그래머를 필요로 하고 게임 하나 개발하기가 엄청나게 힘들었다면

유니티로 인해 접근성이 쉬워졌기 때문에 많은 게임이 나올 수 있는 것 같습니다.

다른 공부도 하면서 틈틈히 공부하는 유니티지만, 1부 1장만으로도 충분히 재미를 느꼈습니다.

특히 책이 굉장히 따라하기 쉽게끔 설명이 되어있습니다.

살짝 아쉬운 점이라면 유니티에 쓰여있는 용어에 대한 설명이 간단하게만 언급하는 점입니다.

물론 굳이 용어에 대한 설명을 자세하게 풀어쓸 이유는 없습니다.

가령 리지드바디(Rigid Body)에 대한 설명은 없이

'중력을 추가하기 위해리지드바디 컴포넌트를 추가해야 한다.'

이런 식이 끝입니다.

책을 계속 보면서 예제를 따라하다보면 후에 자세하게 설명해줄 수도 있으니

우선은 이정도로만 리뷰를 마치고 계속 공부 해봐야겠습니다.

한줄 평 : 굉장히 따라하기 쉽지만 최소한의 영어를 알아두면 더욱 좋다.

안녕하세요? 쿠엔입니다. 오늘은 한빛미디어의 소문난 명강의 시리즈 중 레트로의 유니티 게임 프로그래밍 에센스에 대해 짧게나마 리뷰를 진행하겠습니다. 저도 게임을 좋아하기에 게임 프로그래밍에 대해 관심이 많았었는데요, 이번에 좋은 기회가 있어 이렇게 도서를 제공받아 리뷰를 작성할 수 있게 되었습니다. 그럼 리뷰 시작하겠습니다.

 

 

 

▲ 2,000명 이상의 유료 온라인 수강생을 보유한 이제민 저자

▲ 최종 예제는 좀비 서버이버 멀티플레이 게임이다

▲ 빌드도 차근차근 설명되어 있다

유니티 프로그래밍 입문서로는 적절한 선택

프로그래밍을 완전 처음 접하신다면 이 책을 추천드리진 않습니다. 다만 프로그래밍을 조금이나마 알고 있고, 유니티를 처음 접하시는 분껜 추천을 드리고 싶은 책입니다. 실제 온라인 유료 강의로 2,000명 이상의 수강생을 보유한 이제민 저자는 독립 개발자로 구글 플레이에서 게임을 출시한 이력도 있습니다. 책의 특징이라고 한다면 실제 초보자들이 겪게 되는 다양한 실수들을 짚어주며, 캡쳐, 그림 등이 제때 나와 이해를 돕습니다. 또한 탄막 슈팅 게임부터 네트워크 협동 게임까지 4가지 예제를 통해 직접 실습할 수 있기에 한 번만 보고 넘어가는 책이 아닌 여러 번 펼쳐보며 익힐 수 있는 책이라 할 수 있습니다. 유료 구독자를 보유하고 있어서인지 모르겠지만 정말 이해하기 쉬웠고, 개념과 원리를 제대로 익힐 수 있었습니다. 아직 저도 끝까지 진도를 나가진 못했지만, 좋은 책이라고 추천드릴 수 있음은 분명한 것 같네요. 유니티 프로그래밍을 시작하실 분들께 정말 추천드리며, 그럼 이상으로 한빛미디어 레트로의 유니티 게임 프로그래밍 에센스 리뷰를 마치겠습니다.

 

레트로의 유니티 게임 프로그래밍 에센스 책의 두께가 두껍다.

 

오늘은 레트로의 유니티 게임 프로그래밍 에센스 라는 책에 대해 리뷰를 해 보려고 합니다.

이 책은 무려 1000 페이지에 달하는 분량으로 처음 받아 봤을때 그 두께의 압박감으로 깜짝 놀라기는 합니다.

가격도 전문서적인 만큼 조금 비싼감이 있습니다.

 

책이 두권으로 분리할 수 있다.

 

이 책은 두께의 부담감을 조금이라도 해소하기 위해 두권의 책으로 분리가 가능하도록 만들었습니다.

1부~4부까지 한권,5부~7부 까지 한권 으로 되어 있네요.

아무리 집에서 읽는 책이라고 하여도 1000페이지 분량을 한번에 넘기기는 쉽지 않을텐데 이렇게 분리가 가능하게 한것은 참 잘한것 같네요.

 

이 책의 저자는 예술 콘텐츠 학과에 입학하여 디자인과 스토리텔링을 배운후 컴퓨터 공학과 컴퓨터 과학을 배웠다고 합니다.

그래서 그는 아티스트 입장에서 기술을 잘 풀어 설명하고 초보자 입장에서 무엇이 필요한 지를 설명하는 능력을 가지고 있습니다.

 

프로그래밍 언어를 가장 빨리 배우는 길은 실무에서 업무에 해당하는 프로그램을 직접 구현해 보는 것입니다.

실제로 조금 힘들기는 하지만 주어진 시간 안에 프로젝트를 구현하기 위해서는 그 프로젝트에 필요한 기술들을 검색하면서 용도에 맞게 수정하면서 사용하다 보면 어느정도 그 언어를 배우면서 또한 많이 배우게 됩니다.

하지만 급하게 프로젝트를 위해서 배운 프로그래밍 언어는 그 언어의 특기인 장점을 살리지 못하는 경우도 종종 있을 수 있습니다.

하나의 프로그래밍 언어를 오랫동안 사용한 후에야 그 언어의 장점이 무엇이구나 하는 것을 깨닫게 되는데요.

이 책은 이러한 부분을 해결한 책이라고 볼 수가 있을것 같아요.

4개의 프로젝트를 수행하면서 화면 구성 방법부터 스크립트 사용법 을 통해 하나 하나의 프로젝트를 수행하다 보면 어느새 유니티를 이용하여 게임을 만들수 있는 스킬이 생겨 있을 것입니다.

 

1부에서는 유니티 프로그램 설치 부터 유니티 프로그램 사용법 까지 매뉴얼 보다 더욱 친절하게 설명이 되어 있고

2부에서는 C# 프로그래밍의 기본 부터 문법을 설명해 놓았습니다.

3부에서는 4가지 프로젝트중 하나인 탄막슈팅게임 닷지 프로그램을 제작해 봅니다.

4부에서는 공간의 방향,크기,움직임등 원리에 대해 알아봅니다.

5부에서는 유니런 게임

6부 7부에서는 좀비 서바이버 프로그램을 네트워크와 연결하여 네트워크 플레이어가 가능하도록 구현을 해 봅니다.

(이 책으로 프로젝트를 구현시 네트워크 게임까지도 구현이 가능합니다.)

 

이 책은 유니티 프로그램의 설치 부터 기본 화면까지 매뉴얼 처럼 친절하게 설명되어 있고.

유니티에서 사용하기 위한 객체를 움직이기 위한 C# 스크립트를 사용할 수 있는 문법부터 체계적으로 설명되어 있습니다.

이러한 기본 지식을 바탕으로 4개의 프로젝트를 구현하면서 이책의 마지막장을 덮을때 쯤에는 시중에서 사용되는 게임 4가지를 만들어진 모습과 자신감을 얻게 될 것 입니다.

 

이 책에서 구현해 보는 4가지 게임

 

이렇게 4가지 게임을 통해서 마지막 네트워크 협동게임까지 완성을 한다면 어떤 게임이라도 만들 수 있을것 같다.

 

게임을 만들기 전 설계도

 

게임을 만들어 보기 이전에 어떤 게임을 만들것인지 목표와 미션이 주어지고 기능에 대해 하나하나 명세서를 작성해서 어떤 프로그램을 만들것인지 생각해 보는 것은 기존 개발자에게는 무척이나 중요한 일이다.

이러한 작업들은 학생들이 무턱대고 프로그램을 만드는 것이 아닌 먼저 설계를 하고 그에 맞춰서 프로그램을 구현할 수 있도록 체계적인 작업을 합니다.

 

그리고 이 책을 보면서 제가 가장 좋았던 것은 최신판이라는 것입니다.

 

몇달전에 저희 아이가 유니티 공부를 하고 싶다고 해서 최근에 나온 책이라고 해서 유니티 책을 하나 구매해서 본적이 있습니다.

그런데 유니티 버젼이 예전 버젼을 사용한 샘플코드들이어서 요즘에 유니티 프로그램에서는 C#을 기본으로 하고 자바스크립트는 스크립트 생성 과정이 없어졌는데...

그 책에서는 자바스크립트를 기본으로 하는 책이어서 화면의 구성이 많이 틀려서 따라서 컴파일 해 보는 것도 너무 쉽지 않은 기억이 있었는데요.

 

이 책의 샘플코드 들은 아직 나오기 전 버젼인 유니티 2019 버젼을 기준으로 하여 오히려 현재 릴리즈 버젼인 유니티 2018 버젼으로 컴파일 했을때 에러 메시지가 출력되는 것을 확인 할 수 있었습니다.

책에서 제공해 주는 샘플 코드들이 2019 버젼으로 만들어졌고 또한 화면 구현 자체가 2019 버젼으로 만들어 졌기에 한동안은 이 책을 그냥 따라서만 연습해도 충분히 가능할 것이라는 점이었네요.

(이 책과 같이 제공되는 샘플 코드를 컴파일 해 볼 목적이라면 현재 베타 버젼으로 제공되는 유니티 2019 버젼을 이용하시면 될것 같네요.)

 

이 책은 완전 초보자 부터 어느정도 유니티를 다뤄 보기는 했지만 실제 프로젝트를 수행하는데 두려움을 느끼는 중급자 까지도 보기에 너무 좋은 책이라고 생각되네요.

 

이 책의 자세한 내용은 한빛미디어 http://www.hanbit.co.kr/store/books/look.php?p_code=B3604463061 에서 볼 수 있습니다.

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

배송료 안내

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

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

닫기

리뷰쓰기

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

* 리뷰 작성시 유의사항

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

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

오탈자 등록

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

도서 인증

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

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

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

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

닫기

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

자료실

최근 본 상품1