안드로이드 게임 프로그래밍
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
저자(글) 마리오 제흐너
저자 마리오 제흐너 (Mario Zechner)는 일과 시간에는 R&D 소프트웨어 엔지니어로 근무하고 저녁에는 Badlogic Games라는 이름으로 게임을 개발해 출시하는 게임 개발자로 일한다. 마리오는 수많은 프로토타입 게임과 소규모 게임을 비롯해 안드로이드용 Newton 게임과 윈도우, 리눅스, 맥 OS X용 Quantum 게임을 개발했다. 현재 그는 libgdx라는 오픈소스 크로스플랫폼 게임 개발 솔루션을 개발 중이다. 마리오는 코딩 작업 외에 게임 개발과 관련한 튜토리얼과 기술 문서 집필 활동도 열심히 하고 있다. 그가 쓴 글은 웹과 블로그(http://www.badlogicgames.com)에서 무료로 볼 수 있다.
번역 유윤선
역자 유윤선은 인디 개발자이자 프리랜서 번역가로 활동 중이다. 이따금 http://joshy21.com/weblog에 번역과 상관없는 글을 올리고 있다. 역서로는 『시작하세요! 아이폰 4 프로그래밍(위키북스)』, 『플래시 빌더 4 & 플렉스 4 바이블(위키북스)』, 『쉽고 빠르게 익히는 CSS3(위키북스)』, 『스프링 시큐리티 3(위키북스)』, 『시작하세요! 아이패드 프로그래밍(위키북스)』, 『플래시 게임 마스터(에이콘출판사)』, 『Adobe AIR 인 액션(위키북스, 공역)』, 『스프링 3 레시피(위키북스, 공역)』, 『액션스크립트 3.0 완벽가이드(인사이트, 공역)』 등이 있다.
목차
- 01장 안드로이드, 뉴 키즈 온 더 블록
안드로이드에 대한 간단한 소개
파편화
구글의 역할
- 안드로이드 오픈소스 프로젝트
- 안드로이드 마켓
- 챌린지, 개발자 지원 프로그램, 구글 I/O
안드로이드의 기능과 아키텍처
- 커널
- 런타임과 달빅
- 시스템 라이브러리
애플리케이션 프레임워크
소프트웨어 개발 킷
개발자 커뮤니티
기기, 기기, 기기!
- 하드웨어
- 1세대, 2세대, 차세대
- 차세대 기기
- 게임 컨트롤러
모바일 게임의 차이점
- 주머니 속으로 들어간 게임 기기
- 상시 접속 상태의 유지
- 캐주얼 게임과 하드코어 게임
- 큰 시장과 적은 수의 개발자
정리
02장 안드로이드 SDK 첫 걸음
개발 환경의 설정
- JDK의 설정
- 안드로이드 SDK의 설정
- 이클립스의 설치
- ADT 이클립스 플러그인의 설치
- 이클립스 간단히 살펴보기
안드로이드 방식의 Hello World
- 프로젝트의 생성
- 프로젝트 내용 살펴보기
- 애플리케이션 코드의 작성
안드로이드 애플리케이션의 실행과 디버깅
- 기기 연결
- 안드로이드 가상 기기의 생성
- 애플리케이션의 실행
- 애플리케이션 디버깅
- 로그캣과 DDMS
- ADB의 활용
정리
03장 게임 개발
장르 - 각인각색
- 캐주얼 게임
- 퍼즐 게임
- 액션 및 아케이드 게임
- 타워 디펜스 게임
- 혁신 게임
게임 설계 - 펜은 코드보다 강하다.
- 핵심 게임 방식
- 게임 스토리와 아트 스타일
- 화면과 화면 전환
코드 - 핵심적인 세부 내용
- 애플리케이션과 창 관리
- 입력
- 파일 I/O
- 오디오
- 그래픽
- 게임 프레임워크
정리
04장 게임 개발자를 위한 안드로이드
안드로이드 애플리케이션의 정의 - 매니페스트 파일
-엘리먼트
-엘리먼트
-엘리먼트
-엘리먼트
-엘리먼트
-엘리먼트
- 10단계로 끝내는 안드로이드 게임 프로젝트 설정
- 게임의 아이콘 정의
안드로이드 API의 기본
- 테스트 프로젝트의 생성
- 액티비티 생명주기
- 입력 기기의 처리
- 파일 처리
- 오디오 프로그래밍
- 효과음의 재생
- 스트리밍 음악
- 기본 그래픽 프로그래밍
모범 개발 방식
정리
05장 안드로이드 게임 개발 프레임워크
공략 계획
AndroidFileIO 클래스
AndroidAudio, AndroidSound, AndroidMusic
AndroidInput과 AccelerometerHandler
- AccelerometerHandler: 가속도계의 감지
- Pool 클래스: 재사용은 좋은 것이다!
- KeyboardHandler: 위, 아래, 왼쪽, 오른쪽
- 터치 핸들러
- AndroidInput: 위대한 조율자
AndroidGraphics과 AndroidPixmap: 두 개의 무지개
- 각기 다른 화면 크기와 해상도의 처리
- AndroidPixmap: 사용자를 위한 픽셀 조정
- AndroidGraphics: 드로잉 작업의 수행
- AndroidFastRenderView: 루프, 확장, 루프, 확장
AndroidGame: 모든 내용의 종합
정리
06장 Mr. Nom 안드로이드를 침공하다
자원의 생성
프로젝트 설정
MrNomGame: 메인 액티비티
- Assets: 편리한 자원 저장소
- Settings: 사용자 선택값과 하이스코어의 추적
- LoadingScreen: 디스크로부터 자원 로드
메인 메뉴 화면
HelpScreen 클래스(들)
하이스코어 화면
- 숫자 렌더링: 짧은 여행
- 화면 구현
추상화... 301
- Mr. Nom의 게임 공간에 대한 추상화: 모델, 뷰, 컨트롤러
- GameScreen 클래스
정리
07장 오픈GL ES의 간단한 소개
오픈GL ES는 무엇이고 왜 알아야 하나?
- 프로그래밍 모델: 비유
- 투영
- 정규화된 기기 공간과 뷰포트
- 매트릭스
- 렌더링 파이프라인
시작에 앞서 알아야 할 내용들
작업을 쉽게 도와주는 GLSurfaceView
GCGame: Game 인터페이스의 구현
엄마, 내가 빨간색 삼각형을 그렸어!
- 뷰포트의 정의
- 투영 매트릭스의 정의
- 삼각형의 지정
- 내용 정리
정점 색상의 지정
텍스처 매핑: 손 쉬운 이미지 배치 작업
- 텍스처 좌표
- 비트맵 업로드
- 텍스처 필터링
- 텍스처의 정리
- 유용한 코드 조각
- 텍스처 활성화
- 내용 정리
- 텍스처 클래스
인덱스를 갖는 정점 - 재사용은 항상 유용하다.
- 내용 정리
- Vertices 클래스
알파 블렌딩
다양한 원시 도형 : 점, 선, 스트립, 팬
2차원 변형: 모델-뷰 매트릭스를 활용한 재미있는 프로그래밍
- 세계 공간과 모델 공간
- 다시 살펴보는 매트릭스
- 변형을 활용한 첫 번째 예제
- 더 많은 변형
성능 최적화
- 프레임 레이트의 측정
- 안드로이드 1.5에서 실행되는 히어로의 문제 사례
- 오픈GL ES 렌더링을 느리게 만드는 요인
- 불필요한 상태 변화의 제거
- 텍스처 크기를 줄이면 가져올 픽셀도 줄어든다
- 오픈GL ES/JNI 메서드 호출의 제한
- 바인딩 정점
- 마무리하며
정리
08장 2D 게임 프로그래밍 기법
시작에 앞서
태초에 벡터가 있었다
- 벡터의 활용
- 간단한 삼각함수 이론
- Vector 클래스의 구현
- 간단한 사용 예제
간단한 2차원 물리
- 뉴턴과 오일러, 영원한 좋은 친구들
- 힘과 질량
- 이론적인 적용
- 실제 적용
충돌 감지와 2차원에서의 객체 표현
- 경계 도형
- 경계 도형의 구성
- 게임 객체의 어트리뷰트
- 광범위 충돌 감지와 미세 충돌 감지
- 적용 예제
2차원 카메라
- Camera2D 클래스
- 예제
텍스처 아틀라스: 공유는 관심이다
- 예제
텍스처 영역, 스프라이드, 배치: 오픈GL ES 숨기기
- TextureRegion 클래스
- SpriteBatcher 클래스
스프라이트 애니메이션
- Animation 클래스
- 예제
정리
09장 수퍼 점퍼 - 2D 오픈GL ES 게임
핵심 게임 방식
게임의 배경 이야기와 아트 스타일
화면과 화면 전환
게임 세계의 정의
자원의 생성
- UI 요소
- 비트맵 폰트를 활용한 텍스트 처리
- 게임 요소
- 텍스처 아틀라스
- 음악과 효과음
수퍼 점퍼 게임의 구현
- Assets 클래스
- Settings 클래스
- 메인 액티비티
- Font 클래스
- GLScreen
- 메인 메뉴 화면
- 도움말 화면
- 하이스코어 화면
- 시뮬레이션 클래스
- WorldRenderer 클래스
최적화하기 또는 최적화하지 않기
정리
10장 오픈GL ES를 활용한 3D
시작에 앞서
3D의 정점
- Vertices3: 3D 위치의 저장
- 예제
시점 투영 - 가까이 있는 대상을 더 크게
z버퍼 - 혼란 속에 질서를 부여하다
- 이전 예제의 수정
- 블렌딩 - 뒤에 아무도 없다
- z버퍼의 정확도와 z 파이팅
3D 메시의 정의
- 큐브 - Hello World 3D
- 예제
다시 살펴보는 매트릭스와 변형
- 매트릭스 스택
- 매트릭스 스택을 갖춘 계층적 시스템
- 간단한 나무상자 태양계 시스템
- 정리하기
- 간단한 카메라 시스템
정리
11장 3D 프로그래밍 트릭
시작에 앞서
3D에서의 벡터
오픈GL ES에서의 광원
- 광원의 적용 방식
- 광원
- 재료
- 오픈GL ES가 빛을 계산하는 방법 - 정점 법선
- 실제 적용
- 오픈GL ES의 광원 사용과 관련한 몇 가지 참고 사항
밉매핑
간단한 카메라
- 1인칭 카메라 또는 오일러 카메라
- 오일러 카메라 예제
- 관찰 카메라
모델의 로딩
- Wavefront OBJ 형식
- OBJ 로더의 구현
- OBJ 로더의 활용
- 모델 로딩과 관련한 참고사항
간단한 3D 물리 이론
3D에서의 충돌 감지와 객체 표현
- 3D에서의 경계 도형
- 경계 구의 충돌 검사
- GameObject3D와 DynamicGameObject3D
정리
12장 드로이드 인베이더 - 그랜드 파이널
핵심 게임 방식
배경 이야기와 아트 스타일
게임 화면과 화면 전환
게임 세계의 정의
자원의 생성
- UI 자원
- 게임 자원
- 음악과 효과음
접근 방법
Assets 클래스
Settings 클래스
메인 액티비티
메인 메뉴 화면
설정 화면
시뮬레이션 클래스
- Shield 클래스
- Shot 클래스
- 우주선 클래스
- 인베이더 클래스
- 세계 클래스
GameScreen 클래스
WorldRender 클래스
최적화
정리
13장 게임 배포
테스트에 대한 조언
개발자 등록
게임 APK 서명
마켓에 게임 배포
- 자원 업로드
- Listing Details
- 배포 옵션
- 배포!
- 마케팅
개발자 콘솔
정리
14장 이제 어디로?
게임의 소셜 연동
위치 기반 게임
멀티플레이어 기능
오픈GL ES 2.0 및 그 외 기능
프레임워크와 엔진
웹 자료
맺음말
출판사 서평
이 책의 저자인 마리오 제흐너는 오픈소스 크로스플랫폼 게임 개발 솔루션인 libgdx의 주 개발자로서 누구보다도 게임 프레임워크를 만드는 법을 잘 설명할 수 있는 저자다. 이 책에서는 게임 개발의 기본이 되는 파일 입출력(I/O), 사용자 입력 처리, 그래픽, 오디오 등 각 프레임워크 요소를 추상화하고 실제 예제 코드를 통해 각 프레임워크 요소를 적절히 구현함으로써 재사용할 수 있는 게임 프레임워크를 완성하는 법을 보여준다. 또 게임 로직 구현에 도움이 되는 배경 지식에 대한 설명을 통해 충돌 감지, 비트맵 블리팅, 3D 그래픽 프로그래밍 같은 고급 주제를 차례로 소개한다.
『시작하세요! 안드로이드 게임 프로그래밍』은 안드로이드 게임 개발을 시작하는 데 필요한 모든 지식을 제공한다. 이 책에서는 먼저 기본적인 게임 설계 방식과 프로그래밍의 기본 이론을 다루고, 이어서 기본적인 게임 프레임워크를 만드는 법과 즐길 수 있는 자신만의 게임을 만드는 법을 점차적으로 설명한다. 이 책에는 독자들이 책의 내용을 확장해 자신만의 게임을 개발하는 데 필요한 정보가 모두 들어 있다.
<시작하세요! 안드로이드 게임 프로그래밍>은 안드로이드 플랫폼에서 멋진 게임을 만드는 전 과정을 차근차근 소개한다. 이 책에서 다루는 다음 주제들을 통해 독자는 손쉽게 자신만의 게임을 만들 수 있다.
★ 이 책의 내용
ㆍ안드로이드 개발 환경의 설정과 활용 - 기초적인 게임 개발 환경 설정
ㆍ전통적인 2D게임 프로그래밍 - 중독성 있는 액션 게임과 플랫폼 게임 개발
ㆍ안드로이드 그래픽과 오디오 - 게임에서의 화려한 그래픽 기법과 효과적인 오디오 활용
ㆍ게임 개발 기법 - 충돌 감지, 물리 이론, 스프라이트 애니메이션 활용
ㆍ3D 게임 프로그래밍 - 복잡한 3D를 게임에 손쉽게 적용
ㆍ게임 배포 - 게임 배포, 충돌 보고, 사용자 지원
★ 소스코드 다운로드
ㆍhttp://code.google.com/p/beginning-android-games/
ㆍhttp://wikimain.cafe24.com/wiki/data/BeginningAndroidGames/BeginningAndroidGames_source.zip
▣ 책 소개
안드로이드 게임 개발 세계에 입문한 것을 환영한다. 필자의 이름은 마리오다. 이제부터 필자는 이어질 14장에 걸쳐 여러분이 안드로이드 게임을 개발할 수 있게 도와주는 가이드가 돼줄 것이다. 이 책을 구매한 독자라면 안드로이드 게임 개발에 대해 배우려고 책을 구매했을 텐데 모쪼록 필자를 통해 여러분의 꿈을 실현할 수 있기를 바란다.
이 책에서는 다양한 주제를 다룬다. 안드로이드의 기본 원리, 오디오와 그래픽 프로그래밍, 약간의 수학과 물리 이론, 그리고 어렵게만 들리는 오픈GL ES 등이 우리가 다룰 내용이다. 이런 지식을 기반으로 이 책에서는 세 개의 각기 다른 게임을 개발한다. 그 중에는 물론 3D 게임도 들어 있다.
게임 프로그래밍은 여러분이 하고 있는 일을 제대로 알 때 비로소 쉬워진다. 그래서 이 책에서는 재사용하기 쉬운 코드를 제시하는 것뿐 아니라 게임 개발이라는 큰 그림을 보여줄 수 있는 형태로 책의 내용을 설명하려고 노력했다. 이런 내부 원리를 잘 이해해야만 복잡한 게임 아이디어를 제대로 공략할 수 있다. 이 책을 통해 독자들은 책에서 개발한 게임과 비슷한 게임뿐 아니라 웹이나 서점에서 추가로 얻은 지식을 바탕으로 새로운 게임 영역을 개발할 수 있을 만큼 충분한 기초 지식을 쌓을 수 있을 것이다.
▣ 책의 대상 독자
이 책은 우선 게임 프로그래밍 초급자를 대상으로 한다. 이 책의 독자는 게임 프로그래밍에 대한 사전 지식이 전혀 없어도 된다. 게임 프로그래밍에 대한 기본 지식은 이 책에서 모두 다루고 있다. 다만 이 책의 독자라면 자바에 대해 어느 정도 알고 있어야 한다. 자바 언어에 익숙지 않은 독자라면 브루스 에켈이 지은 『Thinking in Java(Prentice Hall, 2006)』의 온라인판을 읽어볼 것을 권한다. 이 책은 자바 언어에 대한 매우 훌륭한 입문서다. 자바 언어에 대한 기본 지식 외에 특별히 갖춰야 할 지식은 없다. 안드로이드나 이클립스를 몰라도 상관없다.
또 이 책은 안드로이드에서 게임을 개발하고자 하는 중급 게임 프로그래머를 대상으로 하는 책이다. 이런 독자에게는 책의 내용 중 일부가 이미 익숙하겠지만 이 책에서는 다양한 팁과 힌트를 소개하고 있으므로 많은 도움이 될 것이다. 안드로이드는 때때로 예상치 못한 방식으로 동작하기도 하는데, 이때 이 책의 내용이 크게 도움될 것이다.
▣ 이 책의 구성
이 책에서는 반복적인 접근 방식을 토대로 매우 기초적인 내용부터 하드웨어 가속을 활용한 고급 게임 프로그래밍까지 천천히, 하지만 확실히 소개한다. 이 책에서는 각 장을 통해 재사용할 코드 기반을 마련하므로 이 책을 순서대로 읽을 것을 권한다. 물론 경험이 많은 독자라면 자신이 확실히 알고 있는 장의 내용은 건너뛰어도 상관없다. 하지만 책의 내용을 건너뛰더라도 고급 주제를 다루는 절에서 해당 클래스와 인터페이스를 어떻게 사용하는지 이해할 수 있게끔 각 절의 코드 예제는 모두 읽어볼 것을 권한다.
- 서문 중에서
기본정보
ISBN | 9788992939867 | ||
---|---|---|---|
발행(출시)일자 | 2011년 09월 30일 | ||
쪽수 | 806쪽 | ||
크기 |
188 * 240
* 40
mm
/ 1546 g
|
||
총권수 | 1권 | ||
시리즈명 |
위키북스 게임 개발 시리즈
|
||
원서명/저자명 | Beginning Android Games/Zechner, Mario |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립