나도 이 책만 있으면 HTML5 게임프로그래밍에 도전할 수 있겠다!!
만들면서 배우는 HTML5 게임 프로그래밍: PC와 스마트폰을 한 번에 잡는 멀티 플랫폼 게임 프로그래밍
어떤 게임을 제작하더라도 게임이라면 갖춰야 할 요소를 프레임워크로 정리했다. 게임 루프 생성, 키보드와 마우스를 위한 입력 처리 시스템, 스마트폰 환경을 위한 터치 입력 시스템, 사운드 시스템, 게임 상태 전환, 그래픽 객체와 애니메이션 관리자, 리소스 프리로더, 프레임 스키퍼, 디버깅 시스템을 단계별로 완성하며 게임의 기초 원리를 완벽하게 학습한다.
이번에 리뷰를 한 책은 HTML5 기반의 게임 프로그래밍 책입니다. HTML5를 어떻게 사용하는지도 중요하지만, 게임적인 요소에 보다 초점을 맞추어 설명이 진행됩니다. 즉, 게임 프로그래밍이 주, HTML5이 보조에 가깝습니다.
* 저자
랜스군의 게임공작소(lancekun.com)를 운영하는 유명한 프리랜서 황동윤 저자입니다. 게임 프로그래밍 관련 이슈들을 다루고 있으며 다수의 게임 개발에 참여했습니다.
기존의 책으로 한빛미디어에서 펴낸 『만들면서 배우는 안드로이드 게임 프로그래밍』(2011)이 있으며, 이러한 저자로서의 경험과 개발자로서의 경험 등이 모두 녹아낸 책입니다.
* 전체 구성
먼저 책 내용을 위해 1장에서는 이클립스와 같은 IDE인 앱태나 설치를 안내합니다.
2장에서는 기본적인 HTML5에 대한 문법 설명을 C언어, 자바와 같은 형태로 나열하고 있습니다.
3장,4장에서는 총알 피하기 게임인, DodgeGame에 대해 처음부터 하나씩 차근차근 만들어가면서 설명을 하고 있습니다.
게임에 대한 지식이 많지 않은 사람에게 쉽게 이해하고 따라할 수 있습니다.
5장은 다소 어려울 수 있는데 Node.js와 Socket.io를 함께 연동하여 게임을 만들게 됩니다. 멀티유저, 즉 다수의 사용자 처리를 위해서는 이를 반드시 활용해야 합니다. PC는 물론 스마트폰 게임 상에서도 이러한 것을 지원하고 있는 추세이기 때문에 어렵더라도 반드시 이해해야 될 부분입니다.
6장은 크롬 웹스토어, 페이스북 등의 웹/앱스토어 등에 배포하는 방법을 설명하고 있습니다. 기존에 크롬이나 페이스북 등은 알고 있었지만, 코드 최적화나 자세한 배포 절차 등은 저자의 경험이 뒷받침된 내용이라는 생각이 듭니다. 그만큼 매우 친절할 정도로 자세합니다.
* 책의 특징
1. 문법적인 설명 구성은 배제(다른 기본 책 참고)
하나의 게임 만들면서 필요한 변수, 메소드, 함수 등을 정의하면서 내용이 구성됨
2. 게임에 대한 요소를 같이 배워나갈 수 있음
-총알과 플레이어의 위치 표시가 겹치는 등 화면 표시할 때 변수 초기화 등 고려해야 되는 요소를 말해주고 있음
3. IE를 기준으로 제작 및 테스트한 게 인상적
- 보통 다른 HTML5책들은 파이어폭스나 크롬을 통한 예제 화면을 넣거나 브라우저별로 지원 여부를 보여주는 형태였음
* 총평
옛날에 도스 시절 총알 피하기 게임이나 우주선 게임 같은 기본적인 PC용 게임을 모바일을 거쳐 이제는 웹의 HTML5로도 표현이 가능해졌습니다. 웹/앱의 구분 없이 다양한 플랫폼을 지원하는 HTML5와 자바스크립트를 활용하여 원하는 게임의 기초부터 단계별로 완성하고, 실시간 멀티 유저의 네트워크 대전 형태까지 발전시킬 수 있도록 자세한 설명을 담고 있습니다. 책의 두께와 가격에 비해 저자의 풍부한 경험이 녹아 있어이를 기반으로 HTML5 게임을 만드는데 있어 필수 도서라 자부할 수 있습니다.