제 회사 바로 앞에는 우리나라를 대표하는 게임 회사인 넥슨이 자리하고 있습니다.
그 분들은 어떻게 하다 게임사로 입사하게 되었는지 정말 궁금한 요즘,,
운 좋게도 게임 프로그래밍에 대한 도서를 제공받았습니다!
주식회사 미소게의 총괄 디렉터이자 기술이사로 자리하고 있는 박태준 개발자,
게임 클라이언트 프로그래머 박효재 개발자,
1인 인디게임 개발자 윤하연 개발자
요렇게 세 분이 쓰신
"한 권으로 배우는 게임 프로그래밍" 입니다.
본 책은 총 4장으로 구성되어 있습니다.
1장은 개발 환경의 구성과 게임 세계를 이해하기 위한 배경지식입니다.
게임 프로그래밍에서 필수적인 유니티 엔진을 포함한 개발 도구의 설치,
그리고 게임 세계를 2D, 3D, 그리고 UI로 나누어 이해해보고자 합니다.
여기까지는 관심있는 개발 경험자분들께서 충분히 부드럽게 읽으실 만한 내용입니다!
참고로,, 그림체가 정말 따뜻하고 귀여운 것 같아요 >_<
정보를 주는 책 치고 눈이 즐거웠습니다.
2장은 프로그래밍에서 뗄레야 뗄 수 없는,
어쩌면 조금은 지겨울 수도 있는 (ㅠㅠ) 수학과 물리입니다.
물론 전공서적처럼 딱딱하거나 어려운 내용은 전혀 아님을 미리 알려드립니다.
혹시 겁먹은 분들을 위해 이 지식이 왜 필요한지를 먼저 짚고,
위치와 이동을 위한 연산, 각과 회전, 적과의 대치 등의 게임 속 개념들을
좌표와 벡터, 공간이라는 수학적 기초 지식을 통해 알기 쉽게 풀어 두었습니다.
또 마지막에는 직접 Easing 그래프나 발판 움직이기 게임을 실습해보으로써
앞선 내용을 이해했는지, 이해하지 않았다면
저자가 무엇을 얘기하고자 했는지 다양한 예시를 통해 독자를 설득하고 있습니다.
3장은 게임 프로그래밍에 필요한 기법을 다룹니다.
특히 정렬, 길찾기, 충돌 판정 등 프로그래밍을 중점으로 학습할 때는
살짝 곁다리로 취급받을 수도 있지만,
게임 프로그래밍에서 필수적으로 다루는 알고리즘, 자료 구조 등을
게임이라는 주제 하에서 다시 보게 되니 반가운 것들이 많았던 장이었습니다.
또 정말 고전 게임..
어떻게 보면 제가 어렸을 때에도 이미 유행이 지났던,
하지만 게임의 근본 중의 근본인 팩맨(Pac Man)에 대한 내용이 나옵니다.
정렬 알고리즘을 통해 랭킹 시스템을 구현하고,
DFS와 BFS를 통해 AI의 길찾기를 구현하며,
충돌 처리 알고리즘을 통해(쪼끔 어려웡요ㅠㅠㅠ)
AABB,Swept AABB 알고리즘 등을 실습해보기도 합니다.
그리고 3.7장, 여기가 가장 기억에 남는 장이었는데
정리, 그리고 효율에 관한 팁이 있습니다.
여기서는 단순히 게임 프로그래밍을 위해서가 아닌
지속가능한 프로그래밍을 위한 팁을 남겨주셔서
요 부분만큼은 꼭 꼼꼼히 읽어보시기를 추천드립니다.
마지막 4장은 게임 프로그래밍을 설계하기 위한 방법론입니다.
객체 지향 프로그래밍은 무엇인지,
그리고 디자인 패턴의 개념과 이 패턴을 어떻게 "게임"이라는 분야에 적용할 수 있을지,
그리고 안티 패턴에 대한 개념과 9개의 지시사항을 통해
게임 프로그래밍을 업으로 삼기 위해
필수적인 방법론과 시야에 대해 안내하고 있습니다.
전반적으로 한 권으로 배우는 게임 프로그래밍 도서는 게임 개발에 필요한
수학, 물리, 자료구조, 알고리즘, 디자인 패턴 등을 체계적으로 다루고 있습니다.
특히 게임 개발을 처음 접하는 독자들도 쉽게 이해할 수 있도록
수학이나 알고리즘과 같은 (심적으로) 어려운 내용을 최대한 간략하게 설명하고 있습니다.
또 이를 다양한 예제 코드를 통해 구현할 수 있도록 독자의 이해를 돕는 데 큰 장점이 있습니다.
또 하나 느꼈던 건, 게임 개발에서 단순히 에진 사용법을 알려주는 것이 아니라
(물론 그랬다면 제목이 쿡북.. 비슷한 뉘앙스로 갔어야 했겠죠.. ㅎㅎ)
게임 개발의 본질을 이해하고 자신만의 게임을 창작하는 데
필요한 시야와 자신감을 얻도록 도와주는 느낌을 많이 받을 수 있었습니다.
게임 개발의 기초를 탄탄히 다지고,
창의적인 게임 제작의 첫 걸음을 내딛고 싶으시다면
꼭 한 권으로 넓은 인사이트를 얻을 수 있는
한 권으로 배우는 게임 프로그래밍 도서를 추천드립니다!!!