iPhone遊戲開發實踐指南

iPhone遊戲開發實踐指南

《iPhone遊戲開發實踐指南》是機械工業出版社出版的圖書。

基本信息

內容簡介

《iphone遊戲開發實踐指南》通過一個實例介紹了在iphone上創建遊戲的完整過程,全面涵蓋從最初的遊戲設計到最終將遊戲上傳至app store的整個過程。全書共分16章,每一章都詳細介紹了該遊戲的一個特定組件及支持該組件的技術,包括最初的遊戲設計思路、之前的準備工作、遊戲循環、圖像渲染、精靈表、動畫、點陣字、貼圖地圖、粒子發射器、聲音、用戶輸入、遊戲界面、遊戲對象和實體、碰撞檢測,以及如何對遊戲進行測試等。

《iphone遊戲開發實踐指南》適合iphone遊戲開發人員閱讀。

作者介紹

白天,Micheal Daley在為世界上最大的商業軟體公司工作,該公司的主要顧客為大型企業。晚上,Micheal學習如何為iPhone手機構建遊戲。Micheal最開始用BASIC在Sinclair Spectrum 48KB上編寫歷險遊戲,後來進一步發展到在commodore 64和Amiga A500上寫遊戲。他從未停止對遊戲編程的熱愛,自iPhone問世後,Micheal開始學習Objective-C和如何為iPhone創建遊戲。

許多年來Micheal為自己的孩子編寫了很多遊戲,iPhone的發布讓他想為更多的人編寫遊戲,而不僅僅是為自己的孩子。

媒體評論

《iPhone遊戲開發實踐指南》是一本帶領讀者走入遊戲編程的優秀書籍,它詳細解釋了針對iPad、iPhone以及iPod touch的遊戲設計和實現的每個方面。對於那些對編寫遊戲感興趣並準備付諸實現的讀者,本書是一個不錯的選擇。—Tom Bradley,TBXML設計者,軟體架構師

一位優秀的開發人員和一個超讚的遊戲——讀者能在這本書中找到這些內容,以學習為iPhone創建酷炫遊戲。沒準你就是下一個AppStore暢銷者!—Sebastien Cardoso

有了《iPhone遊戲開發實踐指南》,讀者可以立即開始編寫自己的遊戲。書中的代碼附有詳細的解釋,將為讀者節省許多在文檔中和網上論壇中查找資料的時間。—Pablo Gomez Basanta, Shifting Mind的創始人

作者在學習和教育方面的激情、解決問題的能力以及將一個完整的遊戲作為例子程式使得《iPhone遊戲開發實踐指南》成為我所閱讀過的好書之一。—Eugene Snyetilov

如果你對於使用OpenGL和OpenAL在iOS平台上進行2D遊戲編程很感興趣,那么《iPhone遊戲開發實踐指南》將在避免技術細節障礙的同時,帶領你經歷創建一個完整並有趣的遊戲的過程。—Scott D. Yelich

作者使朦朧的iPhone套用開發變得清晰。具體的例子、通徹的解釋以及省時的小技巧使得《iPhone遊戲開發實踐指南》成為了每個即將開發iPhone遊戲的開發人員的必備參考書。—Brandon Middleton,Tic Tac Toe Ten的創建者

《iPhone遊戲開發實踐指南》是一本iOS遊戲開發的完全手冊;這本書帶領讀者走過從基礎和術語到實踐使用技術,以開發完整遊戲的全過程。在你認識到這一點以前,你將發現在開發自己的遊戲時,從這本書中學到的紮實的原理和技術會提供很大的動力。在開發自己的遊戲時,沒有比這本書更好的參考資料了。—Rod Strougo,Prop Group的創始人。

圖書目錄

《iphone遊戲開發實踐指南》

對本書的讚譽

譯者序

前言

第1章 遊戲設計1

1.1 遊戲的開始2

1.2 主導思想3

1.2.1 適合iphone的遊戲3

1.2.2 故事情節4

1.2.3 名字的內涵4

1.2.4 遊戲的目標5

1.3 遊戲的元素5

1.3.1 時間6

1.3.2 生命6

1.3.3 健康值6

1.3.4 物品7

1.3.5 羊皮碎片7

1.3.6 門8

1.3.7 武器8

1.3.8 實體8

.1.3.9 玩家9

1.4 小結9

第2章 術語、技術和工具10

2.1 術語10

2.1.1 精靈11

2.1.2 精靈表12

2.1.3 動畫14

2.1.4 點陣字15

2.1.5 貼圖地圖16

2.1.6 粒子系統16

2.2 碰撞檢測18

2.2.1 人工智慧18

2.2.2 遊戲循環19

2.3 技術21

2.3.1 objective-c21

2.3.2 cocoa touch21

2.3.3 opengl es22

2.3.4 openal24

2.4 工具25

2.5 小結30

第3章 開始探索旅程32

3.1 在xcode中創建項目32

3.2 程式的運行34

3.3 準備就緒34

3.4 程式代理35

3.4.1 查看頭檔案36

3.4.2 查看實現檔案37

3.5 eaglview40

3.5.1 eaglview.h40

3.5.2 eaglview.m41

3.6 es1renderer48

3.6.1 審查es1renderer.h48

3.6.2 查看es1renderer.m49

3.6.3 創建幀緩衝區和渲染緩衝區50

3.6.4 render方法52

3.6.5 定義顏色值54

3.6.6 定位55

3.7 opengl的工作原理56

3.7.1 對模型套用變換56

3.7.2 在螢幕上渲染57

3.8 小結59

第4章 遊戲循環61

4.1 時間控制就是一切61

4.2 衝突檢測62

4.3 遊戲循環62

4.3.1 基於幀的循環體63

4.3.2 基於時間的固定間隔循環體64

4.4 開始65

4.4.1 eaglview類的修改65

4.4.2 eaglview.m檔案的修改66

4.4.3 es1renderer類68

4.4.4 配置視圖連線埠71

4.5 遊戲場景和遊戲控制器72

4.5.1 創建遊戲控制器72

4.5.2 gamecontroller類72

4.5.3 創建單態類74

4.5.4 gamecontroller.m檔案內部74

4.5.5 abstractscene類76

4.5.6 gamescene類77

4.6 小結79

4.7 練習79

第5章 圖像渲染81

5.1 渲染入門81

5.2 四邊形的渲染82

5.3 紋理映射84

5.4 交錯頂點數組86

5.5 結構體88

5.6 圖像渲染類89

5.6.1 texture2d類89

5.6.2 texturemanager類96

5.6.3 imagerendermanager類98

5.7 image類104

5.7.1 初始化105

5.7.2 獲取子圖像107

5.7.3 複製圖像108

5.7.4 渲染圖像108

5.7.5 getter和setter111

5.8 小結112

5.9 練習112

第6章 精靈表113

6.1 精靈表簡介113

6.1.1 簡單精靈表113

6.1.2 複雜精靈表114

6.2 使用zwoptex116

6.3 spritesheet類117

6.3.1 初始化117

6.3.2 提取精靈120

6.4 packedspritesheet類121

6.4.1 初始化121

6.4.2 解析控制檔案122

6.4.3 提取精靈123

6.5 小結123

6.6 練習124

第7章 動畫125

7.1 動畫篇的項目125

7.2 動畫簡介125

7.2.1 幀126

7.2.2 狀態126

7.2.3 類型126

7.2.4 方向126

7.2.5 跳動幀126

7.3 animation類127

7.3.1 初始化127

7.3.2 添加幀128

7.3.3 更新動畫128

7.3.4 渲染動畫130

7.3.5 完成131

7.4 小結133

7.5 練習133

第8章 點陣字134

8.1 點陣字項目134

8.2 點陣字簡介134

8.3 創建點陣字精靈表135

8.4 bitmapfont類137

8.5 與c語言的關係138

8.5.1 初始化方法138

8.5.2 解析控制檔案139

8.6 渲染文本142

8.6.1 渲染合理的文本143

8.6.2 文本寬度和高度145

8.6.3 重新分配146

8.7 小結146

8.8 練習147

第9章 貼圖地圖148

9.1 貼圖地圖入門148

9.2 貼圖地圖簡介148

9.3 貼圖地圖編輯器150

9.3.1 貼圖調色板151

9.3.2 圖層151

9.4 創建貼圖地圖152

9.4.1 新建一個貼圖集合152

9.4.2 創建地圖圖層153

9.4.3 創建對象圖層154

9.4.4 繪製地圖154

9.4.5 放置對象154

9.5 認識tiled配置檔案155

9.5.1 map元素155

9.5.2 tileset元素155

9.5.3 layer元素156

9.5.4 objectgroup元素157

9.6 地圖類157

9.6.1 layer類158

9.6.2 tileset類162

9.6.3 tiledmap類163

9.6.4 初始化165

9.6.5 解析地圖檔案166

9.6.6 創建圖層圖像174

9.6.7 圖層渲染175

9.6.8 獲取貼圖信息177

9.7 小結178

9.8 練習178

第10章 粒子發射器179

10.1 粒子發射項目179

10.1.1 粒子系統簡介180

10.1.2 粒子系統參數181

10.2 粒子的生命周期182

10.2.1 粒子的誕生182

10.2.2 粒子生存183

10.2.3 粒子消亡183

10.2.4 粒子重生184

10.3 粒子發射器的配置184

10.4 粒子發射器類185

10.4.1 tbxmlparticleadditions類185

10.4.2 particleemitter類187

10.5 開始遊戲198

10.6 小結199

第11章 聲音200

11.1 聲音項目200

11.2 iphone的聲音簡介200

11.2.1 音頻會話200

11.2.2 播放音樂202

11.2.3 播放音效202

11.2.4 創建音效204

11.2.5 立體聲與單聲道205

11.3 聲音管理器類205

11.4 音效管理219

11.4.1 載入音效220

11.4.2 播放音效223

11.4.3 停止播放音效225

11.4.4 設定音效和監聽器位置226

11.5 處理聲音播放干擾227

11.6 小結228

第12章 用戶輸入230

12.1 用戶輸入項目230

12.2 用戶輸入簡介 231

12.3 處理觸控事件232

12.3.1 touchesbegan階段234

12.3.2 touchesmoved階段235

12.3.3 touchesended階段236

12.4 處理敲擊237

12.5 加速器事件238

12.6 小結240

第13章 遊戲界面241

13.1 遊戲界面項目241

13.2 opengl es界面242

13.2.1 界面渲染242

13.2.2 按鈕邊界定義245

13.2.3 點擊處理245

13.2.4 可視化邊界246

13.2.5 轉換處理248

13.2.6 opengl es定向249

13.3 uikit界面251

13.3.1 創建界面252

13.3.2 界面連線254

13.3.3 uikit定向257

13.3.4 顯示或隱藏uikit界面259

13.4 小結261

第14章 遊戲對象和實體262

14.1 遊戲對象和實體項目262

14.2 遊戲對象263

14.2.1 abstractobject類263

14.2.2 energyobject類265

14.3 遊戲實體272

14.3.1 abstractentity類273

14.3.2 人工智慧275

14.3.3 player實體類276

14.4 保存遊戲對象或實體284

14.5 小結286

第15章 碰撞檢測287

15.1 碰撞檢測簡介287

15.2 基於幀與基於時間289

15.3 軸對齊邊界框289

15.4 檢測碰撞290

15.5 碰撞地圖291

15.6 實體與地圖間的碰撞檢測293

15.7 實體與實體間的碰撞檢測294

15.8 小結296

第16章 組裝起來297

16.1 攝像機297

16.2 保存遊戲狀態和設定299

16.2.1 保存遊戲狀態299

16.2.2 載入遊戲狀態300

16.2.3 保存遊戲設定302

16.2.4 載入遊戲設定303

16.3 保存高分304

16.3.1 添加分數306

16.3.2 保存高分307

16.3.3 載入高分307

16.4 性能和測試308

16.4.1 使用儀表309

16.4.2 leaks儀表310

16.4.3 使用opengl es儀表312

16.4.4 用thumb編譯314

16.5 β測試314

16.5.1 多種設備類型315

16.5.2 反饋316

16.6 小結316

相關詞條

相關搜尋

熱門詞條

聯絡我們