반디앤루니스 인터넷서점

네비게이션 실시간 인기 책

    프로 안드로이드 게임개발

    프로 안드로이드 게임개발 java와c를이용한

    • 블라디미르 실바 저
    • 류광 역
    • 제이펍
    • 2011년 11월 01일
    • 정가
      26,000원
    • 판매가
      26,000원 [0% 할인]
    • 결제 혜택
      무이자
    • 적립금
      780원 적립 [3%P]

      NAVER Pay 결제 시 네이버페이 포인트 5% 적립 ?

    품절된 상품입니다.

    회원리뷰
    - [0]
    ISBN: 9788996241096 408쪽 188 x 257 (㎜)

    지금 이책은

    이 분야의 베스트셀러

    이 책과 함께 구매한 책

    이 책의 시리즈

    전체 선택 쇼핑카트 담기

    출판사 리뷰

    이 책은 안드로이드(Android) 플랫폼을 위한 최상의 게임을 만들려는 독자를 돕는 책이다. 안드로이드 응용프로그램 개발에 대한 책은 많이 있지만, 기존 PC 게임을 최소한의 노력만으로 안드로이드 플랫폼에 이식한다는 독특한 접근방식을 제시하는 것으로는 이 책이 유일하다. 이 책은 실질적인 예제들을 통해서 그러한 접근방식을 보여준다. 이 책을 제대로 공부하기 위해서는 Java와 ANSI C에 대한 기초가 튼튼해야 한다. 복잡하고 어려운 개념들을 최대한 명확하고 간단하게 설명하고 있으며, 이해를 돕기 위해 그림과 소스 코드도 풍부하게 제시하고 있다. 각 장의 소스 코드는 개념을 세세하게 이해하는 데 도움을 주며, 독자가 스스로 게임을 만들 때 개발 시간을 최대한 단축하는 데에도 도움이 될 것이다. 부록 B는 역자가 작성한, 원서에는 없는 번역서만의 추가 내용인데, 이 부록의 주된 목적은 제2장의 작은 예제(개발 환경 점검이 목적인)를 제외한 이 책의 주요 예제들을 독자가 따로 리눅스를 준비하지 않고도 전적으로 Windows에서 빌드하고 실행할 수 있도록 하였다.

    이 책만의 특징
    간단한 ARM C 컴파일러만 있으면 PC 게임들을 안드로이드 플랫폼으로 이식할 수 있다. 그 부분에 집중한다는 것이 바로 이 책만의 장점이다. Java가 기준인 안드로이드 개발 환경에서 C 코드를 재사용할 수 있다면, 수천수만 줄의 C 코드를 일일이 Java로 다시 작성할 필요가 없다. C와 Java를 우아한 방식으로 결합함으로써 시간과 비용을 엄청나게 절약할 수 있는 것이다. 이 책은 바로 그런 접근방식을 제시한다. 그것이 이 책의 목표이자 특징이다. 균형을 맞추기 위해, 초반부에서는 Java만으로 모바일 게임을 만드는 방법도 살펴본다.


    뒷표지 내용
    Asteroids™나 Wolfenstein 3D™, Doom 등등 게임 산업을 획기적으로 바꾼 게임들을 오늘날 가장 주목받는 모바일 및 넷북 플랫폼 중 하나인 Google의 안드로이드 플랫폼에서 직접 만들거나 이식할 수 있다면 어떨까? 이 책은 Space Blaster와 고전 Asteroids 같은 멋진 게임을 처음부터 모두 만드는 방법을 보여줄 뿐만 아니라, Doom과 Wolfenstein 3D 등 C로 작성된 고전 걸작 셰어웨어/오픈소스 게임들을 JNI(Java Native Interface)를 이용해서 안드로이드로 이식하는 방법도 보여준다.

    이 책은 안드로이드 게임 개발에서 자바와 C를 균형 있게 결합한 혼성(hybrid) 접근방식이 얼마나 강력한지를 잘 보여주는 독특한 책이다. 자바의 우아한 객체지향적 특징들과 C의 강력한 성능을 결합한다면 안드로이드 플랫폼에서 못 만들 게임이 없다. 작동 가능한 소스 코드만 구할 수 있다면, 이 책을 통해서 여러분도 안드로이드용 게임 개발의 세계로 뛰어들 수 있다.

    이 책의 주요 내용은 다음과 같다.

    - 혼성 게임의 컴파일과 링크를 위한 Linux 시스템을 준비한다.
    - 간단한 네이티브 라이브러리와 자바 코드로 이루어진 예제 프로젝트를 통해서 Java와 C를 우아한 방식으로 결합하는 방법을 제시한다.
    - Space Blaster와 고전 아케이드 게임 Asteroids를 자바만 이용해서 직접 만들어본다.
    - Google의 3차원 입방체 예제를 개선하는 예제를 통해, OpenGL 작업의 대부분을 C로 구현함으로써 3D 그래픽 성능을 높이는 방법을 설명한다.
    - PC용 3D 슈팅 게임의 두 걸작인 Wolfenstein 3D와 Doom을 자바와 C의 조합을 통해 안드로이드에 이식한다.

    이 책을 다 읽고 나면, PC용으로 만들어진 게임들을 급성장하고 있는 안드로이드 플랫폼으로 가져오는 것이 얼마나 쉬운지 알게 될 것이다. 기존 코드를 재사용함으로써 안드로이드용 게임을 좀 더 빠르게 만들어 내려는 게임 개발자에게 이 책이 큰 도움이 될 것이다.

    저자 소개

    블라디미르 실바

    지은이 : 블라디미르 실바 (Vladimir Silva)
    지은이 블라디미르 실바는 Middle Tennessee State University에서 전산학 석사 학위를 받았다. 그는 4년간 IBM에서 연구 공학자로 일하면서 분산 및 그리드 컴퓨팅에 대한 방대한 경험을 쌓았으며, 고급 기술과 집중력을 갖춘 개인이자 팀 플레이어다. 또한 그는 미국의 두 National Honor Society의 일원이며, IBM을 위해 여러 전산학 논문들을 발표하기도 했다. 저서로는 『Grid Computing for Developers』 (Charles River Media, 2005)와 『Practical Eclipse RCP Projects』 (Apress, 2009)가 있다.
      

    옮긴이 : 류광
    30년 이상의 번역 경력을 가진 전문 번역가로, 커누스 교수의 『컴퓨터 프로그래밍의 예술』(The Art of Computer Programming) 시리즈와 『구체 수학 제2판』(Concrete Mathematics 2nd), 스티븐스의 『UNIX 고급 프로그래밍』(Advanced Programming in UNIX Environment) 제2판과 제3판, 『Game Programming Gems』 시리즈 등을 포함하여 60여 권의 다양한 IT 전문서를 번역했다.
    번역과 프로그래밍 외에 소프트웨어 문서화에도 많은 관심이 있으며, 수많은 오픈소스 프로젝트의 표준 문서 형식으로 쓰이는 DocBook의 국내 사용자 모임인 닥북 한국(http://docbook.kr)의 일원이다. 현재 번역서 정보 사이트 occam’s Razor(http://occamsrazr.net)와 게임 개발 및 개발서 관련 사이트 GpgStudy(http://www.gpgstudy.com)를 운영하고 있다.  

    역자 소개

    류광

    옮긴이 류광은 1996년부터 활동해온 프로그래밍 서적 전문 번역가로, 『Game Programming Gems』 시리즈를 포함해서 십수 권의 게임 프로그래밍 책들을 번역했으며, Knuth 교수의 고전 『컴퓨터 프로그래밍의 예술』 시리즈 전권(1, 2, 3)과 Bjarne Stroustrup의 『Programming―Principles and Practice Using C++』를 비롯해서 다양한 분야의 프로그래밍 서적들을 30권 넘게 번역했다. 안드로이드 관련 번역서로는 『시작하세요! 안드로이드 프로그래밍』이 있다.

    번역과 프로그래밍 외에 소프트웨어 문서화에도 많은 관심을 가지고 있으며, 수많은 오픈소스 프로젝트들의 표준 문서 형식으로 쓰이는 DocBook의 국내 사용자 모임인 닥북 한국(http://docbook.kr/)의 일원이다.

    현재 번역서 정보 사이트 occam’s Razor(http://occamsrazr.net/)와 Game Programming Gems 스터디 사이트 GpgStudy.com(http://www.gpgstudy.com/)을 운영하고 있다.
     

    목차

    1장 안드로이드 게임 개발을 시작하며
    필요한 능력
    안드로이드 개발의 기초 지식
    리눅스와 셸 스크립팅 기초 지식
    필요한 소프트웨어 도구들
    개발용 리눅스 컴퓨터 준비
    안드로이드 소스 얻기
    네이티브 안드로이드 라이브러리 추출
    ARM 프로세서용 GNU 도구사슬 설치
    커스텀 컴파일 스크립트 작성
    안드로이드 개발 환경 설정
    요약

    2장 안드로이드 네이티브 코드 다루기
    기본적인 안드로이드 네이티브 프로그램
    AVD 생성
    안드로이드 프로젝트 만들기
    안드로이드 응용프로그램의 구조
    공유 라이브러리의 컴파일과 시험
    기호 누락 문제 해결
    기기에서 동적 라이브러리를 검사
    strace를 이용한 디버깅
    정적 링크
    안드로이드 응용프로그램에서 시험해 보기
    요약

    3장 순수 Java로 안드로이드 게임 만들기
    안드로이드 게임 개발 대 Java ME 게임 개발
    첫 Java 게임, Space Blaster 만들기
    게임의 전반적인 구조
    프로젝트 생성
    게임의 활동 클래스 작성
    게임 레이아웃 작성
    게임의 구현
    키 및 터치 사건 처리
    에뮬레이터에서 시험해 보기
    요약

    4장 Java 게임 계속: 다각형 다루기
    이번 장의 구성
    안드로이드에서 다각형 그리기를 힘들게 하는 걸림돌들
    직사각형 그리기에 관련된 걸림돌
    Asteroids를 위한 다각형 클래스 만들기
    Asteroids에 사용할 PolygonSprite 클래스
    게임의 전반적인 구조
    프로젝트 만들기
    게임 레이아웃 만들기
    프로젝트에 쓰이는 자원들
    게임의 수명 주기
    키 입력과 화면 터치 사건 처리
    Asteroids를 에뮬레이터에서 시험
    요약

    5장 JNI를 이용한 혼성 OpenGL 3D 그래픽
    모바일 기기의 성능
    Java로 OpenGL 다루기
    Java 전용 버전의 주 활동
    표면 뷰
    GLThread
    입방체 렌더러
    Cube 클래스
    네이티브 방식의 OpenGL 렌더링
    주 활동
    네이티브 연동 클래스
    기존 클래스들 고치기
    네이티브 입방체 렌더러
    네이티브 버전의 입방체 정의
    예제의 컴파일과 실행
    OpenGL 게임을 안드로이드로 이식할 때 주의해야 할
    사항들
    베일이 벗겨지다

    6장 3D 슈팅 게임 에피소드 I: 안드로이드용 Wolfenstein 3D
    사전 준비
    이번 장 소스 코드 내려 받기
    Wolf 3D 소개
    게임의 전반적인 구조
    Wolf 3D의 Java 클래스들
    게임의 주 활동
    Wolf 3D의 주 메뉴
    키 입력과 터치 사건 처리
    게임의 주 루프로 진입
    네이티브 콜백 호출
    배경 음악과 효과음 처리
    게임 컨트롤러 터치 사건 처리부
    게임 컨트롤러 구현
    음향 클래스들
    네이티브 연동 클래스
    네이티브 계층
    주 게임 루프의 시작
    콜백: C에서 Java 메서드를 호출
    네이티브 라이브러리 만들기
    Makefile 작성
    JNI 헤더와 DSO 생성
    Wolf 3D를 에뮬레이터로 시험
    요약

    7장 3D 슈팅 게임 에피소드 II: 안드로이드용 Doom
    Java/C 조합의 위력
    Doom을 모바일 기기로 이식하기
    Doom 게임의 전반적인 구조
    Java 계층의 주 활동
    생성 처리부
    게임 UI 레이아웃
    메뉴 생성 및 선택 처리부
    키 입력 및 터치 사건 처리부
    네이티브 콜백 처리부
    게임 컨트롤러
    음향 처리 클래스들
    네이티브 연동 클래스
    콜백 청취자 인터페이스
    네이티브 메서드들
    C에서 Java로의 콜백들
    네이티브 계층
    네이티브 메서드 구현
    원본 코드 고치기
    Doom 네이티브 라이브러리(DSO) 컴파일하기
    안드로이드용 Doom을 에뮬레이터로 시험
    프로젝트 완수!

    부록 A 설치 및 컴파일 요령
    응용프로그램 서명
    키 저장소 만들기
    응용프로그램 서명
    안드로이드 NDK를 이용해서 제6장, 7장 예제 라이브러리 컴파일하기
    NDK 1.5로 Wolf 3D 컴파일하기
    공유 라이브러리 컴파일
    NDK 1.5에서 OpenGL ES 사용하기
    NDK 1.6으로 Doom 네이티브 라이브러리 컴파일하기
    책을 마치며

    부록 B NDK r3 활용
    NDK r3으로 제5장 OpenGL 입방체 예제 컴파일하기
    폴더 구조 준비
    Eclipse 프로젝트 준비
    네이티브 라이브러리의 컴파일 및 링크
    Java 소스 수정 및 실행
    NDK r3으로 제6장 Wolfenstein 3D 컴파일하기

    찾아보기

    배송 시 유의사항

    - 반디앤루니스에서 구매하신 도서는 물류 대행 위탁업체 웅진 북센을 통해 배송됩니다.
     (배송 포장에 "웅진 북센"으로 표기될 수 있습니다.)

    - 구매한 상품의 품질과 배송 관련 문의는 반디앤루니스로 문의 바랍니다.

    - 천재지변 및 택배사의 사정에 따라 배송이 지연될 수 있습니다.

    - 결제(입금) 완료 후 출판사 및 유통사의 사정으로 품절 또는 절판 되어 상품 구입이 어려울 수 있습니다. (별도 안내 예정)

    - 도서산간지역의 경우 추가 배송비가 발생될 수 있습니다.

    반품/교환

    상품 설명에 반품/ 교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다)

    반품/교환

    반품/교환
    반품/교환 방법 홈 > 고객센터 > 자주찾는질문 “반품/교환/환불” 안내 참고 또는 1:1상담게시판
    반품/교환 가능 기간 반품,교환은 배송완료 후 7일 이내, 상품의 결함 및 계약내용과 다를 경우 문제발견 후 30일 이내에 신청가능
    반품/교환 비용 변심 혹은 구매착오의 경우에만 반송료 고객 부담(별도 지정 택배사 없음)
    반품/교환 불가 사유
    • 소비자의 책임 사유로 상품 등이 손실 또는 훼손된 경우
    • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    • 복제가 가능한 상품 등의 포장을 훼손한 경우 : 예)만화책, 잡지, 화보집 등
    • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
    • 전자상거래등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
    • 해외주문 상품(해외 원서)의 경우(파본/훼손/오발송 상품을 제외)
    소비자 피해보상
    환불지연에 따른 배상
    • 상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
      소비자 분쟁해결 기준(공정거래위원회고시)에 준하여 처리됨
    • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
      소비자 보호에 관한 법률에 따라 처리함
    반품/교환 주소 경기도 파주시 문발로 77, 웅진북센(반디앤루니스)
    • 회사명 : (주)서울문고
    • 대표이사 : 김홍구
    • 개인정보 보호책임자 : 김홍구
    • E-mail : bandi_cs@bnl.co.kr
    • 소재지 : (06168) 서울 강남구 삼성로 96길 6
    • 사업자 등록번호 : 120-81-02543
    • 통신판매업 신고번호 : 제2023-서울강남-03728호
    • 물류센터 : (10881) 경기도 파주시 문발로 77 반디앤루니스
    copyright (c) 2016 BANDI&LUNI'S All Rights Reserved