《android 4 游戲實戰編程》
第ⅰ部分 規劃與創建2d游戲
第1章 歡迎進入android游戲世界 3
1.1 android游戲編程 3
1.2 從一個好故事開始 4
1.2.1 故事緣何重要 5
1.2.2 編寫你的故事 6
1.3 本書的學習方式 8
1.4 獲取android開發工具 9
1.5 選擇android版本 11
1.6 小結 12
第2章 射擊游戲“星空戰士” 13
2.1 “星空戰士”背后的故事 13
2.2 是什么構成了游戲 15
2.2.1 理解游戲引擎 16
2.2.2 理解具體游戲代碼 17
2.2.3 探索“星空戰士”引擎 19
2.3 創建“星空戰士”項目 20
2.4 小結 22
第3章 啟動:制作菜單 23
.3.1 構建啟動畫面 23
3.1.1 創建活動 24
3.1.2 創建一個新類 24
3.1.3 將類轉變為活動 25
3.1.4 創建啟動畫面圖片 29
3.1.5 導入圖片 30
3.1.6 處理r.java文件 31
3.1.7 創建布局文件 31
3.1.8 編輯xml文件 32
3.1.9 使用framelayout 33
3.1.10 添加圖片與文本 33
3.1.11 連接starfighteractivity與布局 36
3.1.12 創建漸變效果 38
3.1.13 線程化游戲 40
3.1.14 創建游戲線程 41
3.1.15 設置新的意圖 43
3.1.16 終止活動 44
3.2 創建主菜單 46
3.2.1 添加按鈕圖片 46
3.2.2 設置布局 48
3.2.3 連接按鈕 49
3.2.4 添加onclicklistener 51
3.3 添加音樂 53
3.3.1 創建音樂服務 54
3.3.2 播放音樂 59
3.4 小結 63
第4章 繪制環境 65
4.1 渲染背景 65
4.1.1 創建活動 66
4.1.2 創建渲染器 70
4.1.3 使用opengl加載圖片 76
4.1.4 滾動背景 87
4.2 添加第二個層 94
4.2.1 加載第二個紋理 96
4.2.2 滾動第二個層 97
4.2.3 使用矩陣 98
4.2.4 完成scrollbackground2()方法 100
4.3 以每秒60幀的速度運行 102
4.3.1 暫停游戲循環 103
4.3.2 清除opengl緩沖 105
4.4 修改主菜單 106
4.5 小結 107
第5章 創建角色 109
5.1 精靈動畫 109
5.2 加載角色 111
5.2.1 創建紋理映射數組 112
5.2.2 將紋理加載到角色上 116
5.2.3 創建游戲循環 119
5.3 移動角色 121
5.3.1 繪制角色的默認狀態 122
5.3.2 編寫player_release動作 124
5.3.3 向左移動角色 127
5.3.4 加載正確的精靈 128
5.3.5 加載第二幀動畫 132
5.3.6 向右移動角色 134
5.3.7 加載右側動畫 136
5.4 通過觸摸事件移動角色 139
5.4.1 解析motionevent 140
5.4.2 捕獲action_up與action_down 142
5.5 調整fps延遲 144
5.6 小結 145
第6章 添加敵人 147
6.1 中局管理 147
6.2 創建紋理類 148
6.3 創建敵人類 152
6.3.1 添加新的精靈圖表 152
6.3.2 創建sfenemy類 154
6.3.3 貝塞爾曲線 157
6.4 小結 162
第7章 為敵人添加基本的人工智能 165
7.1 為敵人準備好ai 165
7.1.1 創建每個敵人的邏輯 167
7.1.2 初始化敵人 169
7.1.3 加載精靈圖表 171
7.2 回顧ai 172
7.2.1 創建moveenemy()方法 172
7.2.2 創建enemies[ ]數組循環 173
7.2.3 通過ai邏輯移動敵人 173
7.3 創建攔截機ai 174
7.3.1 調整頂點 175
7.3.2 鎖定玩家位置 176
7.3.3 實現斜率公式 179
7.4 創建偵察機ai 186
7.4.1 設置隨機點以移動偵察機 188
7.4.2 沿著貝塞爾曲線移動 189
7.5 創建戰艦ai 192
7.6 小結 194
第8章 防御 195
8.1 創建武器精靈圖表 195
8.2 為武器設定軌道 199
8.2.1 創建武器數組 199
8.2.2 添加第2個精靈圖表 199
8.2.3 初始化武器 200
8.2.4 移動武器炸彈 201
8.2.5 檢測屏幕邊界 203
8.2.6 調用fireplayerweapons()方法 205
8.3 實現碰撞檢測 206
8.3.1 應用碰撞檢測 206
8.3.2 創建detectcollisions()方法 207
8.3.3 檢測特定的碰撞 208
8.3.4 刪除無效炸彈 209
8.4 擴展所學內容 211
8.5 小結 212
8.6 回顧關鍵的2d代碼 212
第9章 發布游戲 233
9.1 準備清單 233
9.2 準備簽名、對齊及發布 234
9.2.1 檢測androidmanifest文件 236
9.2.2 創建密鑰 237
9.3 小結 239
第ⅱ部分 創建3d游戲
第10章 斑點獵人:創建3d游戲 243
10.1 2d游戲與3d游戲的比較 243
10.2 創建3d項目 244
10.2.1 blobhunteractivity.java 244
10.2.2 bhgameview 245
10.2.3 bhgamerenderer 245
10.2.4 bhengine 247
10.3 創建3d對象測試 247
10.3.1 創建常量 248
10.3.2 創建bhwalls類 248
10.3.3 實例化bhwalls類 251
10.3.4 映射圖片 252
10.3.5 使用gluperspective()方法 253
10.3.6 創建drawbackground()方法 255
10.3.7 收尾工作 257
10.4 小結 259
第11章 創建身臨其境的環境 261
11.1 使用bhwalls類 261
11.2 通過多個bhwalls實例創建通道 262
11.3 使用bhcorridor類 263
11.3.1 構建bhcorridor類 263
11.3.2 使用vertices[]數組構建多個墻體 265
11.3.3 創建texture[]數組 266
11.3.4 創建draw()方法 269
11.3.5 添加墻體紋理 273
11.4 調用bhcorridor 274
11.5 小結 275
第12章 在3d環境中進行導航 277
12.1 創建控制界面 277
12.1.1 編輯bhengine 278
12.1.2 編輯blobhunteractivity 279
12.1.3 向前移動玩家 280
12.2 穿過通道 281
12.3 調整玩家的視野 283
12.4 小結 284
12.5 回顧關鍵的3d代碼 284
iOS平臺的進入門檻不高,對于有志在移動應用領域有所表現的開發者來說,能很容易掌握開發技術,同時也能容易地將自己開發的應用投入到iOS平臺上,包括移動游戲在內的移動應用創業將會是移動互聯網領域最有前景和最有商機的方向。在越來越多的大型開發企業和發行商不斷涌入到這一新興領域的背景下,個人開發者如何才能開發出讓人眼前一亮的移動應用,并能在市場的檢驗下取得不錯的成績呢?從本書中你將找到答案。在本書中,作者對App Store的研究以及針對應用開發提出的種種建議,是非常有價值的,能讓開發者找到一種應用開發的捷徑。