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