出版時(shí)間:2012-11 出版社:清華大學(xué)出版社 作者:(美) 策希納(Zechner, M.),無(wú)(美) 格林(Green, R.) 著 頁(yè)數(shù):534 字?jǐn)?shù):876000
Tag標(biāo)簽:無(wú)
內(nèi)容概要
《android
4游戲編程入門(mén)經(jīng)典》囊括了成為一名成功的android游戲開(kāi)發(fā)者所需的全部知識(shí)。本書(shū)是一本可以信賴的指南,能夠幫助你在移動(dòng)游戲開(kāi)發(fā)中迅速“升級(jí)”。學(xué)完本書(shū)并加以融會(huì)貫通,就能夠編寫(xiě)出成功的android游戲。
《android
4游戲編程入門(mén)經(jīng)典》將引導(dǎo)你在android平臺(tái)上完整地開(kāi)發(fā)出3個(gè)示例游戲,包括2d游戲和3d游戲。本書(shū)首先介紹游戲開(kāi)發(fā)的理論基礎(chǔ),而且通過(guò)只使用剪刀、筆和紙從頭設(shè)計(jì)一個(gè)完整的游戲,教會(huì)你游戲設(shè)計(jì)的基礎(chǔ)知識(shí)。接下來(lái),你將學(xué)習(xí)編程基礎(chǔ)知識(shí),并開(kāi)始創(chuàng)建基本的游戲引擎和可玩的游戲。你將以一個(gè)有趣的2d游戲作為起點(diǎn),最終創(chuàng)建出一個(gè)完善的3d太空入侵者游戲的克隆版本。這些項(xiàng)目將一步步地豐富你的知識(shí)和技能。
主要內(nèi)容
設(shè)置和使用android開(kāi)發(fā)工具:準(zhǔn)備好編寫(xiě)自己的游戲
經(jīng)典的2d游戲編程:創(chuàng)建讓人愛(ài)不釋手的動(dòng)作游戲和平臺(tái)游戲
android圖形和音頻:讓游戲看起來(lái)和聽(tīng)起來(lái)都如此美妙
游戲機(jī)制:充分利用碰撞檢測(cè)、物理知識(shí)和精靈動(dòng)畫(huà)
3d游戲編程:以簡(jiǎn)單的方式在游戲中添加復(fù)雜的3d
最后一步:發(fā)布游戲,收到崩潰報(bào)告,幫助用戶解決問(wèn)題
《android
4游戲編程入門(mén)經(jīng)典》詳盡地介紹了移動(dòng)游戲所需的一切基礎(chǔ)知識(shí),書(shū)中講解的知識(shí)和技能將幫助你成為一名出色的移動(dòng)游戲開(kāi)發(fā)者。
作者簡(jiǎn)介
Mario Zechner白天是一名軟件研發(fā)工程師,到了晚上就變身為熱情高漲的游戲開(kāi)發(fā)者,以Badlogic
Games的名義發(fā)布游戲。他開(kāi)發(fā)了基于Android平臺(tái)的游戲Newton,和基于Windows、Linux和Mac
OSX的游戲Quantum以及其他眾多游戲原型和小型游戲。目前,他正致力于一個(gè)名為libgdx的開(kāi)源跨平臺(tái)游戲開(kāi)發(fā)解決方案。除了編寫(xiě)代碼以外,他還積極撰寫(xiě)關(guān)于游戲開(kāi)發(fā)的教程和文章,這些可以在網(wǎng)上特別是他的博客(http://badlogicgames.com)上免費(fèi)查看。
書(shū)籍目錄
第1章 android,后起之秀
1.1 android簡(jiǎn)介
1.2 版本分裂
1.3 谷歌的角色
1.3.1 android開(kāi)源項(xiàng)目
1.3.2 android market
1.3.3 挑戰(zhàn)賽、設(shè)備播種計(jì)劃和谷歌i/o
1.4 android的功能和體系結(jié)構(gòu)
1.4.1 內(nèi)核
1.4.2 運(yùn)行庫(kù)和dalvik虛擬機(jī)
1.4.3 系統(tǒng)庫(kù)
1.4.4 應(yīng)用程序框架
1.5 軟件開(kāi)發(fā)工具包
1.6 開(kāi)發(fā)人員社區(qū)
1.7 設(shè)備,設(shè)備,設(shè)備
1.7.1 硬件
1.7.2 設(shè)備的范圍
1.8 所有設(shè)備之間的兼容性
1.9 不同的手機(jī)游戲
1.9.1 人手一臺(tái)游戲機(jī)
1.9.2 隨時(shí)上網(wǎng)
1.9.3 普通用戶與游戲迷
1.9.4 市場(chǎng)很大,開(kāi)發(fā)人員很少
1.10 小結(jié)
第2章 從android sdk開(kāi)始
2.1 搭建開(kāi)發(fā)環(huán)境
2.1.1 安裝jdk
2.1.2 安裝android sdk
2.1.3 安裝eclipse
2.1.4 安裝adt eclipse插件
2.1.5 eclipse快速瀏覽
2.1.6 一些實(shí)用的eclipse快捷鍵
2.2 android環(huán)境下的hello world
2.2.1 創(chuàng)建項(xiàng)目
2.2.2 進(jìn)一步分析項(xiàng)目
2.2.3 編寫(xiě)應(yīng)用程序代碼
2.3 運(yùn)行和調(diào)試android應(yīng)用程序
2.3.1 連接設(shè)備
2.3.2 創(chuàng)建一個(gè)android虛擬設(shè)備
2.3.3 運(yùn)行應(yīng)用程序
2.3.4 調(diào)試應(yīng)用程序
2.3.5 logcat和ddms
2.3.6 使用adb
2.4 小結(jié)
第3章 游戲開(kāi)發(fā)基礎(chǔ)
3.1 游戲類型
3.1.1 休閑游戲
3.1.2 益智游戲
3.1.3 動(dòng)作和街機(jī)游戲
3.1.4 塔防游戲
3.1.5 創(chuàng)新
3.2 游戲設(shè)計(jì):筆比代碼更強(qiáng)大
3.2.1 游戲的核心機(jī)制
3.2.2 一個(gè)故事和一種藝術(shù)風(fēng)格
3.2.3 畫(huà)面和切換
3.3 代碼:具體細(xì)節(jié)
3.3.1 應(yīng)用程序和窗口管理
3.3.2 輸入
3.3.3 文件i/o
3.3.4 音頻
3.3.5 圖形
3.3.6 游戲框架
3.4 小結(jié)
第4章 面向游戲開(kāi)發(fā)人員的android
4.1 定義一個(gè)android應(yīng)用程序:清單文件
4.1.1 [manifest]元素
4.1.2 [application]元素
4.1.3 [activity]元素
4.1.4 [uses-permission]元素
4.1.5 [uses-feature]元素
4.1.6 [uses-sdk]元素
4.1.7 10個(gè)簡(jiǎn)單步驟建立android游戲項(xiàng)目
4.1.8 市場(chǎng)過(guò)濾器
4.1.9 定義游戲圖標(biāo)
4.2 android api基礎(chǔ)
4.2.1 創(chuàng)建測(cè)試項(xiàng)目
4.2.2 活動(dòng)的生命周期
4.2.3 處理輸入設(shè)備
4.2.4 文件處理
4.2.5 音頻編程
4.2.6 播放音效
4.2.7 音樂(lè)流
4.2.8 基本圖形編程
4.3 最佳實(shí)踐
4.4 小結(jié)
第5章 android游戲開(kāi)發(fā)框架
5.1 制定計(jì)劃
5.2 androidfileio類
5.3 androidaudio、androidsound和androidmusic
5.4 androidinput和accelerometer-handler
5.4.1 accelerometerhandler:手機(jī)哪一面朝上
5.4.2 compasshandler
5.4.3 pool類:重用相當(dāng)有用
5.4.4 keyboardhandler
5.4.5 觸摸處理程序
5.4.6 androidinput:優(yōu)秀的協(xié)調(diào)者
5.5 androidgraphics和androidpixmap
5.5.1 處理不同屏幕大小和分辨率的問(wèn)題
5.5.2 androidpixmap:人物的像素
5.5.3 androidgraphics:滿足繪圖需求
5.5.4 androidfastrenderview
5.6 androidgame:合并所有內(nèi)容
5.7 小結(jié)
第6章 mr. nom入侵android
6.1 創(chuàng)建資源
6.2 建立項(xiàng)目
6.3 mrnomgame:主要活動(dòng)
6.3.1 資源:便捷的資源存儲(chǔ)
6.3.2 設(shè)置:跟蹤用戶的選項(xiàng)設(shè)置和高分榜
6.3.3 loadingscreen:從磁盤(pán)獲取資源
6.4 主菜單畫(huà)面
6.5 helpscreen類
6.6 高分榜畫(huà)面顯示
6.6.1 渲染數(shù)字
6.6.2 畫(huà)面的實(shí)現(xiàn)
6.7 抽象
6.7.1 抽象mr. nom的世界:模型、視圖、控制器
6.7.2 gamescreen類
6.8 小結(jié)
第7章 opengl es介紹
7.1 opengl es概述以及關(guān)注它的原因
7.1.1 編程模型:一個(gè)比喻
7.1.2 投影
7.1.3 規(guī)范化設(shè)備空間和視口
7.1.4 矩陣
7.1.5 渲染管道
7.2 開(kāi)始之前
7.3 glsurfaceview:從2008年開(kāi)始,事情變得簡(jiǎn)單了
7.4 glgame:實(shí)現(xiàn)游戲接口
7.5 繪制一個(gè)紅色的三角形
7.5.1 定義視口
7.5.2 定義投影矩陣
7.5.3 指定三角形
7.5.4 綜合示例
7.6 指定每個(gè)頂點(diǎn)的顏色
7.7 紋理映射:輕松地創(chuàng)建壁紙
7.7.1 紋理坐標(biāo)
7.7.2 上傳位圖
7.7.3 紋理過(guò)濾
7.7.4 釋放紋理
7.7.5 有用的代碼片段
7.7.6 啟用紋理
7.7.7 綜合示例
7.7.8 texture類
7.8 索引頂點(diǎn):重用是有好處的
7.8.1 代碼整合
7.8.2 vertices類
7.9 半透明混合處理
7.10 更多圖元:點(diǎn)、線、條和扇
7.11 2d變換:操作模型視圖矩陣
7.11.1 世界空間和模型空間
7.11.2 再次討論矩陣
7.11.3 第一個(gè)使用平移的示例
7.11.4 更多的變換
7.12 性能優(yōu)化
7.12.1 測(cè)量幀率
7.12.2 android 1.5平臺(tái)下hero的奇特案例
7.12.3 使opengl es渲染如此慢的原因
7.12.4 移除不必要的狀態(tài)改變
7.12.5 減小紋理大小意味著需要獲取更少的像素
7.12.6 減少opengl es/jni方法的調(diào)用
7.12.7 綁定頂點(diǎn)的概念
7.12.8 寫(xiě)在結(jié)束之前
7.13 小結(jié)
第8章 2d游戲編程技巧
8.1 寫(xiě)在開(kāi)始
8.2 向量
8.2.1 使用向量
8.2.2 一點(diǎn)三角學(xué)的知識(shí)
8.2.3 實(shí)現(xiàn)一個(gè)向量類
8.2.4 一個(gè)簡(jiǎn)單的用法示例
8.3 2d物理定律淺析
8.3.1 牛頓和歐拉,永遠(yuǎn)的好朋友
8.3.2 力和質(zhì)量
8.3.3 理論上的運(yùn)動(dòng)
8.3.4 運(yùn)動(dòng)的實(shí)現(xiàn)
8.4 2d碰撞檢測(cè)和對(duì)象表示
8.4.1 邊界形狀
8.4.2 構(gòu)造邊界形狀
8.4.3 游戲?qū)ο蟮膶傩?br /> 8.4.4 寬階段和窄階段碰撞檢測(cè)
8.4.5 一個(gè)詳細(xì)的示例
8.5 2d照相機(jī)
8.5.1 camera2d類
8.5.2 示例
8.6 紋理圖集
8.7 紋理區(qū)域、精靈和批處理:隱藏opengl es
8.7.1 textureregion類
8.7.2 spritebatcher類
8.8 精靈動(dòng)畫(huà)
8.8.1 animation類
8.8.2 示例
8.9 小結(jié)
第9章 super jumper:一個(gè)2dopengl es游戲
9.1 核心游戲機(jī)制
9.2 背景故事和藝術(shù)風(fēng)格
9.3 畫(huà)面和切換
9.4 定義游戲世界
9.5 創(chuàng)建資源
9.5.1 ui元素
9.5.2 使用點(diǎn)陣字體處理文本
9.5.3 游戲元素
9.5.4 用于救援的紋理圖集
9.5.5 音樂(lè)與音效
9.6 實(shí)現(xiàn)super jumper
9.6.1 assets類
9.6.2 settings類
9.6.3 主活動(dòng)
9.6.4 font類
9.6.5 glscreen
9.6.6 主菜單畫(huà)面
9.6.7 幫助畫(huà)面
9.6.8 高分畫(huà)面
9.6.9 模擬類
9.6.10 游戲畫(huà)面
9.6.11 worldrenderer類
9.7 是否需要優(yōu)化
9.8 小結(jié)
第10章 opengl es:進(jìn)入3d世界
10.1 準(zhǔn)備工作
10.2 3d中的頂點(diǎn)
10.2.1 vertices3:存儲(chǔ)3d空間位置
10.2.2 示例
10.3 透視投影:越近則越大
10.4 z-buffer:化混亂為有序
10.4.1 完善上一個(gè)例子
10.4.2 混合:身后空無(wú)一物
10.4.3 z-buffer精度與z-fighting
10.5 定義3d網(wǎng)格
10.5.1 立方體:3d中的“helloworld”
10.5.2 一個(gè)示例
10.6 矩陣和變換
10.6.1 矩陣堆棧
10.6.2 用矩陣堆棧實(shí)現(xiàn)分層系統(tǒng)
10.6.3 木箱太陽(yáng)系的簡(jiǎn)單實(shí)例
10.7 小結(jié)
第11章 3d編程技巧
11.1 準(zhǔn)備工作
11.2 3d中的向量
11.3 opengl es中的光照
11.3.1 光照的工作機(jī)制
11.3.2 光源
11.3.3 材質(zhì)
11.3.4 opengl es中如何對(duì)光照過(guò)程進(jìn)行運(yùn)算:頂點(diǎn)法線
11.3.5 實(shí)踐
11.3.6 關(guān)于opengl es中光照應(yīng)用的一些建議
11.4 材質(zhì)變換(mipmapping)
11.5 簡(jiǎn)單的照相機(jī)
11.5.1 第一人稱照相機(jī)或歐拉照相機(jī)
11.5.2 一個(gè)歐拉照相機(jī)的示例
11.5.3 跟隨照相機(jī)
11.6 加載模塊
11.6.1 wavefront obj格式
11.6.2 obj加載器的實(shí)現(xiàn)
11.6.3 使用obj加載器
11.6.4 關(guān)于加載模型的一些建議
11.7 3d中的一些物理知識(shí)
11.8 碰撞檢測(cè)與3d中的對(duì)象表達(dá)法
11.8.1 3d中的邊界形狀
11.8.2 邊界球重疊測(cè)試
11.8.3 gameobject3d與dynamic-gameobject3d
11.9 小結(jié)
第12章 droid invaders游戲
12.1 游戲的核心機(jī)制
12.2 游戲的故事背景與藝術(shù)風(fēng)格
12.3 屏幕與場(chǎng)景切換
12.4 定義游戲世界
12.5 創(chuàng)建資源
12.5.1 用戶界面的資源
12.5.2 游戲資源
12.5.3 音效與音樂(lè)
12.6 開(kāi)始編寫(xiě)代碼
12.7 assets類
12.8 settings類
12.9 主活動(dòng)
12.10 主菜單
12.11 游戲設(shè)置畫(huà)面
12.12 模擬類
12.12.1 shield類
12.12.2 shot類
12.12.3 ship類
12.12.4 invader類
12.12.5 world類
12.13 gamescreen類
12.14 worldrender類
12.15 游戲優(yōu)化
12.16 小結(jié)
第13章 發(fā)布游戲
13.1 關(guān)于測(cè)試
13.2 成為注冊(cè)開(kāi)發(fā)人員
13.3 給游戲的apk包簽名
13.4 將游戲發(fā)布至market
13.4.1 上傳資源
13.4.2 產(chǎn)品詳情
13.4.3 發(fā)布選項(xiàng)
13.4.4 發(fā)布
13.4.5 市場(chǎng)推廣
13.5 開(kāi)發(fā)人員控制臺(tái)
13.6 小結(jié)
第14章 進(jìn)階內(nèi)容
14.1 社交網(wǎng)絡(luò)
14.2 位置識(shí)別
14.3 多玩家功能
14.4 opengl es 2.0以及更多內(nèi)容
14.5 框架及引擎
14.6 網(wǎng)絡(luò)資源
14.7 結(jié)束語(yǔ)
章節(jié)摘錄
版權(quán)頁(yè): 插圖: 內(nèi)容提供程程序(content provider):該組件允許將應(yīng)用程序的部分?jǐn)?shù)據(jù)用于其他應(yīng)用程序。 意圖(intent):這是由系統(tǒng)或應(yīng)用程序本身所創(chuàng)建的消息,它可傳遞到任何對(duì)其感興趣的一方。意圖可以告訴我們一些系統(tǒng)事件,例如,SD卡正在被移除或USB電纜正在進(jìn)行連接等。意圖也可被系統(tǒng)用于肩動(dòng)一些應(yīng)用程序的組件,如活動(dòng)。我們也可激活自己的意圖來(lái)要求其他應(yīng)用程序執(zhí)行一個(gè)操作,例如打開(kāi)照片庫(kù)來(lái)顯示一幅圖像或啟動(dòng)Camera應(yīng)用程序來(lái)拍一張照片。 廣播接收者(broadcast receiver):用于響應(yīng)特定的意圖,并可執(zhí)行一個(gè)動(dòng)作,例如啟動(dòng)一個(gè)特定的活動(dòng)或向系統(tǒng)發(fā)送另一個(gè)意圖。 Android應(yīng)用程序沒(méi)有單一的程序入口點(diǎn),這與我們熟悉的桌面操作系統(tǒng)不同(例如,Java中的main()方法就是程序的入口點(diǎn))。相反,肩動(dòng)Android應(yīng)用程序組件或命令其執(zhí)行一個(gè)指定的動(dòng)作都是通過(guò)特定的意圖實(shí)現(xiàn)的。 應(yīng)用程序中所包含的組件和這些組件所響應(yīng)的意圖全都定義在應(yīng)用程序的清單文件中。Android系統(tǒng)通過(guò)使用該文件來(lái)獲知應(yīng)用程序的構(gòu)成,如應(yīng)用程序啟動(dòng)時(shí)顯示的默認(rèn)活動(dòng)。 注意:本書(shū)中只關(guān)注活動(dòng),所以只討論清單文件中該類型組件的相關(guān)清單文件部分。如果你想了解其他組件,那么可以到Android開(kāi)發(fā)人員網(wǎng)站中學(xué)習(xí)有關(guān)清單文件的更多知識(shí)。 清單文件除了定義一個(gè)應(yīng)用程序的組件外,還有很多的用途。下面的列表總結(jié)了在游戲開(kāi)發(fā)背景下清單文件的相關(guān)部分的用途。 應(yīng)用程序的版本號(hào),用于在Android Market上顯示和使用。 應(yīng)用程序所運(yùn)行的Android系統(tǒng)版本。 應(yīng)用程序要求的硬件配置文件(如多點(diǎn)觸摸、特定屏幕分辨率和對(duì)OpenGL ES 2.0的支持等)。 使用特定組件的權(quán)限,如SD卡的寫(xiě)權(quán)限或聯(lián)網(wǎng)棧的訪問(wèn)權(quán)限。 我們將在下面的小節(jié)中創(chuàng)建一個(gè)模板清單,并通過(guò)稍微的修改而將其重用于本書(shū)丌發(fā)的所有項(xiàng)目中。為此,我們可以看看用于定義應(yīng)用程序所需的所有相關(guān)XML標(biāo)記。
編輯推薦
《Android 4游戲編程入門(mén)經(jīng)典》囊括了成為一名成功的Android游戲開(kāi)發(fā)者所需的全部知識(shí)。《Android 4游戲編程入門(mén)經(jīng)典》是一本可以信賴的指南,能夠幫助你在移動(dòng)游戲開(kāi)發(fā)中迅速“升級(jí)”。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
Android 4游戲編程入門(mén)經(jīng)典 PDF格式下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版