로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

Cocos2d-x 3 모바일 게임 프로그래밍

 [게임 개발 프로그래밍 시리즈 35]
   
지은이 인자건   |   출판사 에이콘  |   발행일 2014년 05월 30일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 30,000원27,000원 10%
마일리지 5% 1,500원
발행일 2014-05-30
ISBN 8960775657 | 9788960775657
기타정보 국내서 | 488쪽 | 일반
예상출고일 1일 (근무일기준)
배송비 무료배송
   
게임
종합지수 1p 200 위
   
 

『Cocos2d-x 3 모바일 게임 프로그래밍』은 코코스2d-x에서 제공하는 기능을 상세하게 설명함으로써 체계적인 게임 개발의 기초를 다질 수 있도록 안내한 책이다. 카드 게임, 횡 스크롤 게임, 미니 플라이트 게임 등 대표적인 3가지 실전 게임 프로젝트를 만들어보며 모바일 게임 개발에 대한 실전 감각을 익힐 수 있도록 한다.




[ 이 책의 특징]

■ 국내 처음으로 코코스2d-x 3.0 정식 버전을 다루는 책

■ 게임 개발의 기초를 익힐 수 있는 풍부하고 체계적인 기능 설명

■ 따라 하기만 해도 바로 게임을 만들 수 있는 3가지 실전 게임 예제





[ 이 책에서 다루는 내용 ]



■ 스프라이트, 라벨, 메뉴, 액션 기능 등 기본적인 코코스2d-x에 대한 설명

■ 화면과 레이어를 구성하고 전환하는 방법

■ 터치 이벤트를 구현하고 객체들 간에 충돌을 체크하는 방법

■ 애니메이션과 배경 스크롤을 구현하는 방법

■ 사운드, 파티클 같은 효과를 적용하는 방법

■ 스크롤뷰, 에디트박스 등 GUI를 구성하는 방법

■ 네트워크 통신에 필요한 기능

■ 카드 게임, 횡 스크롤 게임, 슈팅 게임 등 3가지 실전 게임 프로그래밍

[ 이 책의 구성]



1장 소개: 코코스2d-x의 역사와 사용 현황, 특징을 알아보고, 유니티 게임 엔진과 비교하면서 각 게임 엔진의 장단점을 알아본다.
그리고 코코스2d-x의 개발 환경을 구축하고 새로운 프로젝트를 만드는 방법에 대해서도 살펴본다.



2장 기본 기능: 코코스2d-x의 기본 기능을 알아본다. 먼저 코코스2d-x에서 사용하는 좌표계와 앵커포인트(Anchor Point)에
대해 알아보고, 게임을 만들 때 많이 사용하는 이미지와 텍스트를 화면에 출력하는 방법, 그리고 메뉴 버튼을 만드는 방법을 학습한다.
마지막으로 코코스2d-x의 기본 프로젝트인 HelloWorld 소스 코드를 자세하게 분석한다.



3장 다양한 액션 기능: 코코스2d-x의 가장 큰 장점은 다양한 액션 기능이다. 게임을 만들 때 가장 많이 사용하는 기능도 액션
기능이다. 3장에서는 코코스2d-x에서 제공하는 액션 기능을 기본 액션과 응용 액션으로 구분해서 자세하게 알아본다.



4장 게임 화면의 전환: 게임은 보통 여러 개의 화면(Scene)으로 구성되며, 한 화면에서도 여러 개의 레이어(Layer)로 구성될
때가 많다. 4장에서는 새로운 화면을 만드는 방법과 다른 화면으로 전환하는 방법, 그리고 한 화면에서 새로운 레이어를 추가하는 방법을
배운다. 또 화면을 전환할 때 제공되는 화면 전환 효과에 대해서도 알아본다.



5장 터치 이벤트와 충돌 체크: 모바일 게임은 PC 게임과 다르게 게임을 하려면 마우스나 키보드 조작이 아닌 화면을 터치해야 한다.
그리고 사용자가 터치한 화면의 위치를 게임에서 사용하는 경우도 많다. 5장에서는 터치 이벤트의 종류와 사용법에 대해 살펴본다. 또 화면을
터치하거나 게임에서 오브젝트간에 충돌 여부를 체크하는 방법도 알아본다.



6장 실전 게임 #1: 기억력 게임: 간단하지만 지금까지 배웠던 기능을 사용해 간단한 게임을 만들어본다. 함께 만들 게임은 기억력
게임으로 카드의 번호가 보여지는 순서를 기억하고 있다가 보여진 순서대로 카드를 선택하는 게임이다. 지금까지 배웠던 기능을 모두
사용하겠지만 특히 대부분의 게임 구현 부분을 액션 기능으로 구현할 예정이다.



7장 애니메이션과 타이머: Animation과 Animate 클래스에 대해 알아보고 애니메이션을 구현할 때 사용되는
SpriteFrame에 대해 알아본다. 그리고 터치 이벤트처럼 어떠한 이벤트가 발생할 때만 동작하는 것이 아니라 계속해서 충돌 체크 등을
확인하기 위해서는 타이머도 필요하다. 코코스2d-x에서 제공하는 schedule 타이머 클래스에 대해서도 살펴본다.



8장 배경 이미지 스크롤: 배경 이미지를 스크롤하는 방법을 다룬다. 이미지가 하나인 배경을 스크롤하는 방법과 여러 개의 이미지로 구성된
배경을 스크롤하는 방법을 살펴보고 배경 스크롤을 좀 더 쉽고 편하게 해주는 ParallaxNode에 대해서도 알아 본다.



9장 실전 게임 #2: 점프맨: 7장, 8장에서 배웠던 애니메이션과 배경 스크롤을 활용해 게임을 만든다. 점프맨 게임은 간단한 횡 스크롤
게임으로, 메뉴 부분은 구현하지 않고 게임 부분만 구현한다.



10장 게임 데이터 관리: 게임에 사용되는 데이터를 효율적으로 관리하는 방법을 알아본다. 간단한 예제 게임을 통해 여러 개의 데이터를 좀
더 효율적으로 관리할 수 있게 해주는 Vector에 대해 살펴보고, 코코스2d-x에서 제공하는 간단한 데이터 저장소인
UserDefault에 대해서도 학습한다.



11장 다양한 이펙트 연출: 코코스2d-x에서 제공하는 파티클 시스템(ParticleSystem)을 사용하는 방법과 사운드 출력 방법을
배워본다. 파티클 시스템은 입자가 되는 작은 이미지를 가지고 다양한 효과를 연출하는 3D 애니메이션 기법을 말한다. 코코스2d-x에서는
기본적인 효과를 제공할 뿐만 아니라 외부 툴에서 만든 파티클도 사용할 수 있다. 그리고 심플 오디오 엔진(Simple Audio
Engine)을 사용해서 간단하게 배경 음악과 효과음을 출력할 수 있다.



12장 실전 게임 #3: 미니 플라이트: 10장, 11장에서 배웠던 데이터 활용 및 파티클 효과를 사용해 실전 게임을 만들어본다. 미니
플라이트는 간단한 비행기 슈팅 게임으로 9장과 동일하게 메뉴 부분은 구현하지 않고 게임 부분만 만들어보겠다.



13장 GUI 구성: 13장에서는 코코스2d-x에서 제공하는 클래스 중에서 GUI(Graphical User Interface)를 구성할
때 자주 사용되는 스크롤뷰(ScrollView)와 스케일9스프라이트 (Scale9Sprite), 에디트박스(EditBox)에 대해
알아본다.



14장 네트워크 구현: http 프로토콜 통신인 HttpClient를 사용하는 방법과 서버와 JSON으로 통신하는 방법, 웹에 있는
이미지를 게임에서 사용하는 방법과 웹에 있는 파일을 저장해 사용하는 방법에 대해 알아본다.



15장 안드로이드 포팅과 화면 사이즈 대응: 지금까지 작업한 소스를 가지고 안드로이드 프로젝트로 포팅하는 방법과 다양한 디바이스 화면
사이즈에 대응하는 방법을 알아본다.



16장 배포: 국내 마켓은 가이드라인이 잘 되어 있고, 모두 안드로이드 마켓이기 때문에 구글의 플레이스토어에 배포하는 방법을 알면 쉽게
접근할 수 있다. 그래서 16장에서는 6개 마켓 중에서 한 번에 전 세계로 배포할 수 있는 플레이 스토어와 앱스토어에 배포하는 방법을
배운다.



1장 소개
__1.1 소개
____1.1.1 역사
____1.1.2 사용 현황
____1.1.3 특징
____1.1.4 유니티 게임 엔진과 장단점 비교
__1.2 개발 환경 구축
____1.2.1 코코스2d-x 다운로드
__1.3 프로젝트 생성
____1.3.1 파이썬 설치
____1.3.2 프로젝트 생성 파일 실행
____1.3.3 프로젝트 실행
__1.4 실습용 기본형 프로젝트 생성
____1.4.1 화면 사이즈 변경
____1.4.2 로그 제거
____1.4.3 리소스 삭제
__1.5 정리

2장 기본 기능
__2.1 좌표계와 앵커포인트
____2.1.1 좌표계
____2.1.2 앵커포인트
__2.2 이미지 출력
____2.2.1 스프라이트 사용
____2.2.2 코코스2d-x의 기본 자료형
____2.2.3 cocos2d-x의 기본 메소드
____2.2.4 스프라이트를 이용해 화면 구성
__2.3 텍스트 출력
____2.3.1 SystemFont
____2.3.2 TTF
____2.3.3 BMFont
____2.3.4 CharMap
____2.3.5 기타 메소드
____2.3.6 다양한 라벨 사용
__2.4 메뉴 버튼 생성
____2.4.1 메뉴 아이템
____2.4.2 메뉴 위치 설정
__2.5 Hello World
____2.5.1 Menu
____2.5.2 Label
____2.5.3 Sprite
__2.6 정리

3장 다양한 액션 기능
__3.1 액션 기능
____3.1.1 액션 기능을 사용하지 않고 이미지 이동
____3.1.2 액션 기능으로 이미지 이동
____3.1.3 By와 To의 차이
__3.2 기본 액션
____3.2.1 위치
____3.2.2 크기
____3.2.3 회전
____3.2.4 화면 출력
____3.2.5 투명도
____3.2.6 색상
__3.3 응용 액션
____3.3.1 시퀀스 액션
____3.3.2 스폰 액션
____3.3.3 리버스 액션
____3.3.4 딜레이타임 액션
____3.3.5 반복, 무한반복 액션
____3.3.6 이즈 액션
____3.3.7 콜 펑션 액션
__3.4 정리

4장 게임 화면의 전환
__4.1 새로운 화면 생성
__4.2 화면 전환
____4.2.1 replaceScene
____4.2.2 pushScene, popScene
__4.3 화면 전환 효과 설정
____4.3.1 화면 전환 효과의 종류
____4.3.2 화면 전환 효과 적용
__4.4 새로운 레이어 추가
__4.5 정리

5장 터치 이벤트와 충돌 체크
__5.1 터치 이벤트
____5.1.1 싱글 터치 이벤트
____5.1.2 멀티 터치 이벤트
____5.1.3 iOS에서의 멀티 터치 설정
__5.2 충돌 체크 구현
____5.2.1 containsPoint
____5.2.2 intersectsRect
__5.3 터치 이벤트와 충돌 체크 사용
__5.4 정리

6장 실전 프로젝트 #1: 기억력 게임
__6.1 게임 구성
____6.1.1 메뉴 화면
____6.1.2 게임 화면
____6.1.3 리소스 추가
__6.2 세로 화면으로 구현
__6.3 메뉴 화면 구현
__6.4 게임 화면 구현
____6.4.1 게임 데이터 초기화
____6.4.2 게임 화면 구성
____6.4.3 게임 시작
____6.4.4 카드 보여주기
____6.4.5 터치 이벤트
____6.4.6 카드 선택
____6.4.7 게임 종료
____6.4.8 게임 종료 메뉴
__6.5 정리

7장 애니메이션과 타이머
__7.1 아틀라스 이미지
____7.1.1 아틀라스 이미지 생성
____7.1.2 아틀라스 이미지 사용
__7.2 애니메이션
____7.2.1 이미지 파일을 사용해 애니메이션 구현
____7.3.2 스프라이트 프레임을 사용해 애니메이션 구현
__7.3 스케줄 사용
__7.4 정리

8장 배경 이미지 스크롤
__8.1 단일 이미지 배경 스크롤 구현
__8.2 다중 이미지 배경 스크롤 구현
__8.3 ParallaxNode를 사용해 배경 스크롤 구현
__8.4 타일을 사용해 배경 스크롤 구현
__8.5 정리

9장 실전 게임 #2: 점프맨
__9.1 게임 구성
__9.2 배경 스크롤 구현
__9.3 캐릭터 애니메이션 구현
__9.4 터치 이벤트로 캐릭터 점프 구현
__9.5 장애물 생성과 이동 구현
__9.6 장애물과 캐릭터 충돌 체크 처리
__9.8 정리

10장 게임 데이터 관리
__10.1 스마일 잡기 게임
__10.2 여러 개의 데이터 관리
__10.3 데이터 저장소 활용
____10.3.1 저장소에 저장
____10.3.2 저장소에서 불러오기
__10.4 최고 점수 구현
__10.5 정리

11장 다양한 이펙트 연출
__11.1 파티클 시스템
____11.1.1 기본 파티클
____11.1.2 파티클 효과 생성
__11.2 사운드 출력
____11.2.1 배경 음악 출력
____11.2.2 배경 음악 관련 메소드
____11.2.3 효과음 출력
____11.2.4 효과음 관련 메소드
____11.2.5 사운드 관련 기타 메소드
__11.3 정리

12장 실전 게임 #3: 미니 플라이트
12.1 게임 구성
____12.1.1 클래스 이름 변경
____12.1.2 리소스 추가
____12.1.3 방향 변경
__12.2 배경 구성과 스크롤 구현
__12.3 플레이어 비행기 생성
__12.4 터치 이벤트로 플레이어 비행기 제어
__12.5 아이템 생성
__12.6 아이템 효과 적용
__12.7 적 비행기 생성
__12.8 적 비행기와 충돌 체크 구현
__12.9 적 비행기 폭발 구현
__12.10 보스 비행기 구현
__12.11 점수 기록
__12.12 정리

13장 GUI 구성
__13.1 스크롤뷰
____13.1.1 스크롤뷰 구현
____13.1.2 스크롤뷰 설정
__13.2 스케일 9스프라이트
__13.3 에디트박스
____13.3.1 에디트박스 설정
____13.3.2 델리게이트
__13.4 정리

14장 네트워크 구현
__14.1 HttpClient 사용
__14.2 JSON을 사용한 통신
__14.3 웹에 있는 이미지 출력
__14.4 웹에 있는 파일 저장
__14.5 정리

15장 안드로이드 포팅과 화면 사이즈 대응
__15.1 안드로이드 포팅 환경 구축
____15.1.1 안드로이드 개발 환경 구축
____15.1.2 NDK 설치
____15.1.3 ANT 설치
____15.1.4 코코스2d-x 환경 설정
__15.2 안드로이드 컴파일
__15.3 안드로이드 컴파일 설정
__15.4 안드로이드 실행
__15.5 이클립스에서 실행
__15.6 다양한 화면 사이즈 대응
__15.6 정리

16장 배포
__16.1 구글 플레이스토어에 배포
____16.1.1 구글 아이디 생성
____16.1.2 플레이스토어 개발자 계정 등록
____16.1.3 플레이스토어 배포용 빌드생성
____16.1.4 플레이스토어에 배포
__16.2 애플 앱스토어에배포
____16.2.1 개발자 프로그램 등록
____16.2.2 인증서와 프로비저닝파일 생성
____16.2.3 앱스토어 어플 등록
____16.2.4 앱스토어 배포용 빌드업로드
__16.3 정리

저자 : 인자건

저자 인자건은 연세대학교 대학원에서 컴퓨터 공학을 전공하고, 해군본부에서 전산장교로 군복무를 한 후, 2002년부터 지금까지 모바일 게임을 개발하고 있다. 게임빌, 컴투스 등의 모바일 게임회사에서 개발 팀장 및 PD을 역임했고, 현재는 「에브리타운」을 개발한 피버스튜디오에서 개발 팀장으로 근무 중이다. 서강대학교 게임교육원에서 자료구조, 멀티미디어설계, 게임 툴 프로그래밍 등의 과목을 강의했으며, 2013년부터 코코스2d-x 게임 개발 과정을 강의하고 있다.



[지은이의 말]



제가 모바일 게임 개발을 처음 접한 2002년은 이제 막 우리나라에서 모바일 게임을 개발하기 시작하던 때이기도 했습니다. 당시에 모두가
쓰던 피처폰에 비하면 지금의 스마트폰은 게임 개발에 제약이 거의 없을 정도로 많은 기능을 제공하며, 이에 따라 모바일 게임 또한 고용량,
고스펙의 게임으로 진보하고 있습니다. 하지만, 개발자 입장에서 본다면 모바일 게임을 만들기는 점점 더 복잡해지고, 게임 엔진을 사용하지
않고 네이티브 언어만으로 개발한다는 것은 더욱 힘들어지는 상황이 되었습니다.

그러던 중 코코스2d-x라는 멀티플랫폼 게임 엔진을 접하게 되었습니다. 코코스2d-x가 안드로이드와 iOS 게임을 동시에 개발할 수
있으며 C++ 언어로 개발이 가능하다는 것은 굉장히 매력적이었습니다. 특히 2D 게임을 주로 개발하는 저에게는 최고의 게임 엔진이라 할
수 있었습니다.

제가 코코스2d-x를 처음 접한 2011년도만 해도 출판된 책은 물론 제대로 된 한글 문서조차 없었습니다. 그래서 오랜 모바일 게임 개발
경험을 바탕으로 직접 책을 집필하기로 마음을 먹고 집필을 시작했습니다. 하지만, 책을 쓴다는 것은 생각보다 쉽지 않았고 더욱이 직장
생활을 병행하는 저에게는 더욱 힘든 일이었습니다. 이렇게 인고의 시간을 보내 결국, 집필하기로 결심한 지 2년 6개월 만에 드디어 이렇게
한 권의 책을 출간하게 되었습니다.

전 세계적으로 볼 때 모바일 게임 시장은 크게 안드로이드와 iOS 플랫폼으로 양분되어 있습니다. 시장점유율만 봤을 때는 안드로이드의
비율이 iOS보다 월등히 높으며, 특히 우리나라에서는 안드로이드의 점유율이 80% 이상을 차지하고 있습니다. 하지만, iOS는 두터운
열혈 사용자들과 유럽과 북미 시장을 생각하면 결코 포기할 수 없는 개발 플랫폼입니다.

몇 년 전만 하더라도 안드로이드와 iOS 게임을 각각의 개발 언어로 따로 개발해야 했습니다. 하지만, 최근에 코코스2d-x와 유니티 같은
멀티 플랫폼 게임 엔진이 속속 등장하면서 개발자들은 게임을 좀 더 쉽게 개발할 수 있게 되었습니다.

코코스2d-x는 개발자들이 가장 많이 사용하는 개발 언어인 C++로 개발이 가능하며, 라이브러리를 추가하는 방식이기 때문에 용량에 대한
부담 없이 손쉽게 게임을 개발할 수 있습니다. 또한 코코스2d-x에서 제공하는 모든 기능에 대한 소스 코드가 공개되어 있기 때문에 좀 더
다양한 활용이 가능합니다.

이 책에서다루는 기본적인 코코스2d-x에 대한 기능 설명뿐만 아니라 모바일 게임 개발에 필요한 다양한 내용등을 통해 여러게임 개발자가
나래를 활짝 펼 수 있기를 바라겠습니다.

인자건
등록된 서평이 없습니다.
셰이더 프로그래밍 입문...
Pope Kim
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
4차 산업혁명, 비즈니스 트렌드...
김 민 구
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
인자건 의 최근 저서
 
3대 게임엔진 완전정복 세트
97,200원
(10%↓+5%)
 
에이콘 출판사의 신간
실전 네트워크와 네트워크 보안 실무
현정훈 저
36,000원
(10%↓+5%)
 
pfSense 마스터
데이빗 지엔타라 저
31,500원
(10%↓+5%)
 
핵심을 정리한 스위프트 3
존 호프만 저
27,000원
(10%↓+5%)
 
제4차 변혁
로버트 스코블, 셸 이스라엘 저
16,200원
(10%↓+5%)
 
손에 잡히는 실전 비즈니스 인텔리전스
아메드 셰리프 저
27,000원
(10%↓+5%)
 
이메일주소수집거부