《Cocos2d-x 3.x案例開發大全(第2版)》是2018年8月人民郵電出版社出版的圖書,作者是吳亞峰、蘇亞光。
基本介紹
- 中文名:Cocos2d-x 3.x案例開發大全(第2版)
- 作者:吳亞峰、蘇亞光
- ISBN:9787115475510
- 頁數:461頁
- 定價:89元
- 出版社:人民郵電出版社
- 出版時間:2018年8月
- 裝幀:平裝
- 開本:16開
內容簡介,圖書目錄,
內容簡介
本書結合作者多年從事遊戲套用開發的經驗,詳細介紹了幾款Cocos2d-x遊戲案例的開發。在介紹案例開發的過程中也介紹了一些常用技術的使用、開發技巧以及思路等。
書中主要內容包括:第1章“初識Cocos2d-x”介紹使用Cocos2d-x遊戲引擎開發3D遊戲的一些基礎知識、環境的配置以及案例的導入和運行;第2章“忍者飛鏢”是非常簡單的休閒小遊戲,通過此案例讀者可以學到很多Cocos2d-x遊戲開發的基礎知識;第3章“切冰塊”是休閒類小遊戲,通過此案例介紹了Box2D物理引擎,為下面講解Bullet引擎打下基礎;第4章探尋當前市面上的火爆遊戲“鱷魚吃餅乾”的開發過程,並講解了如何實現該遊戲的開發;第5章“方塊歷險記”,通過此案例讀者可以學到3D遊戲開發;第6章“峽谷卡丁車”,使得讀者對競速類3D遊戲的開發有一個整體的認識;第7章“森林跑酷”,本遊戲是當下十分流行的體育遊戲;第8章“雷鳴戰機”,通過此案例讀者能夠學習到2D與3D結合的遊戲的開發過程;第9章“天下棋弈”,通過此案例讀者能夠學習網路對戰遊戲的開發;第10章“極速飛行”,通過此案例讀者能夠學習到當下火爆的VR遊戲是如何開發的,進一步學習VR遊戲的開發流程。
本書適合有一定基礎、有志於遊戲開發的讀者學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。
圖書目錄
第 1章 初識Cocos2d-x 1
1.1 Cocos2d-x的概述 1
1.1.1 Cocos2d-x的發展史 1
1.1.2 Cocos2d-x的市場前景 2
1.2 Cocos2d-x開發環境的搭建 3
1.2.1 Android Studio以及Android SDK的下載與配置 3
1.2.2 Android NDK的下載與配置 5
1.2.3 Cocos2d-x的下載與配置 6
1.3 初識Cocos2d-x應用程式 7
1.3.1 本書案例的導入與運行 7
1.3.2 Cocos2d-x案例導入後的相關修改 9
1.4 本章小結 9
第 2章 休閒益智類遊戲——忍者飛鏢 10
2.1 遊戲的背景及功能概述 10
2.1.1 背景描述 10
2.1.2 功能介紹 10
2.2 遊戲的策劃及準備工作 12
2.2.1 遊戲的策劃 12
2.2.2 手機平台下遊戲的準備工作 13
2.3 遊戲的架構 15
2.3.1 各個類的簡要介紹 15
2.3.2 遊戲框架簡介 16
2.4 布景相關類 17
2.4.1 場景管理類GameSceneManager 18
2.4.2 歡迎布景類MainLayer 19
2.4.3 遊戲幫助布景類HelpLayer 22
2.4.4 遊戲記錄成績布景類
RankLayer 25
2.4.5 遊戲關於布景類
AboutLayer 26
2.4.6 遊戲選擇系列布景類SelectLayer 28
2.4.7 遊戲背景類BackGroundPopupWindow 41
2.4.8 遊戲暫停對話框類PausePopupWindow 44
2.4.9 開始遊戲對話框類GameStartPopupWindow 46
2.4.10 遊戲結束對話框類GameOverPopupWindow 47
2.4.11 退出遊戲對話框類ExitPopupWindow 51
2.5 物理引擎相關類 53
2.5.1 基本物體類 53
2.5.2 碰撞檢測類 57
2.5.3 射線投射類 59
2.6 引擎引用入口類——AppDelegate 60
2.7 本章小結 61
第3章 休閒類遊戲——切冰塊 62
3.1 遊戲的背景及功能概述 62
3.1.1 背景描述 62
3.1.2 功能介紹 63
3.2 遊戲的策劃及準備工作 65
3.2.1 遊戲的策劃 65
3.2.2 手機平台下遊戲的準備工作 66
3.3 遊戲的架構 68
3.3.1 各個類的簡要介紹 68
3.3.2 遊戲框架簡介 69
3.4 布景類相關 70
3.4.1 場景管理類GameSceneManager 71
3.4.2 歡迎布景類WelcomeLayer 72
3.4.3 遊戲選擇系列布景類SetLayer 78
3.4.4 選擇系列1關卡布景類set1ChoiceLayer 81
3.4.5 遊戲布景類GameLayer 87
3.4.6 遊戲勝利或失敗布景類SuccLayer 99
3.5 輔助工具類相關 104
3.5.1 工具類 105
3.5.2 輔助類 105
3.6 物理引擎工具類相關 113
3.6.1 自身的光線投射回調類RayCastClosestCallback 113
3.6.2 矩形物體類RectPhyObject 114
3.6.3 多邊形物體類PolygonPhyObject 115
3.7 引擎引用入口類——AppDelegate 116
3.8 遊戲的最佳化及改進 117
3.9 本章小結 117
第4章 休閒益智類遊戲——鱷魚吃餅乾 118
4.1 遊戲的背景及功能概述 118
4.1.1 背景概述 118
4.1.2 功能介紹 119
4.2 遊戲的策劃及準備工作 121
4.2.1 遊戲的策劃 121
4.2.2 手機平台下遊戲的準備工作 122
4.3 遊戲的架構 125
4.3.1 各個類的簡要介紹 125
4.3.2 遊戲的框架簡介 126
4.4 遊戲常量頭檔案AppMacros 127
4.5 遊戲輔助類 128
4.5.1 焊接關節類——WeldJoint 128
4.5.2 滑鼠關節類——MouseJoint 129
4.5.3 氣泡道具類——AirBubble 130
4.5.4 氣球道具類——AirBullon 133
4.5.5 彈簧道具類——Bouncer 134
4.5.6 拖拉棒道具類——DragRod 136
4.5.7 電擊道具類——Electric 140
4.5.8 帽子道具類——Hat 142
4.5.9 蜘蛛道具類——Spider 144
4.5.10 釘子道具類——Nail 147
4.5.11 尖刺道具類——Spike 148
4.5.12 碰撞監聽器類——MyContactListener 150
4.6 場景相關類 152
4.6.1 遊戲場景管理類——Box2DSceneManager 152
4.6.2 載入布景類——LoadLayer 153
4.6.3 開始布景類——StartLayer 155
4.6.4 設定布景類——
OptionLayer 158
4.6.5 選主題布景類——ChooseHouseLayer 161
4.6.6 選關布景類——ChooseLevelLayer 164
4.6.7 遊戲布景類——
Box2DLayer 167
4.7 引擎引用入口類——AppDelegate 172
4.8 遊戲的最佳化及改進 173
4.9 本章小結 173
第5章 3D休閒遊戲——方塊歷險記 174
5.1 遊戲背景及功能概述 174
5.1.1 遊戲開發背景概述 174
5.1.2 遊戲功能簡介 175
5.2 遊戲的策劃及準備工作 176
5.2.1 遊戲的策劃 176
5.2.2 遊戲的開發準備工作 177
5.3 遊戲的架構 178
5.3.1 各類的簡要介紹 178
5.3.2 遊戲框架簡介 179
5.4 布景相關類 180
5.4.1 總場景管理類——ObjSceneManager 180
5.4.2 3D布景類——My3DLayer 181
5.4.3 選單布景類——
My2DLayer 186
5.4.4 攝像機管理類——CameraChange 188
5.5 機關與方塊相關類 189
5.5.1 方塊管理類——
ZFTManager 190
5.5.2 地刺機關管理類——
DiCiBox 192
5.5.3 掉落塊機關管理類——DiaoLuoManager 193
5.5.4 夾子機關管理類——
JiaZiBox 194
5.5.5 移動機關管理類——YiDongBox 196
5.5.6 煙霧管理類——YanWu 198
5.6 常量及其他相關類 200
5.6.1 常量類——Constant 200
5.6.2 引擎套用入口類——AppDelegate 202
5.7 遊戲的最佳化及改進 203
5.8 本章小結 203
第6章 競速類遊戲——峽谷卡丁車 204
6.1 遊戲的背景及功能概述 204
6.1.1 遊戲開發的背景概述 204
6.1.2 遊戲的功能介紹 204
6.2 遊戲的策劃及準備工作 206
6.2.1 遊戲的策劃 207
6.2.2 遊戲的準備工作 207
6.3 遊戲的架構 210
6.3.1 遊戲中各類的簡要介紹 210
6.3.2 遊戲的框架簡介 211
6.4 遊戲常量頭檔案——APPMacros 212
6.5 場景相關類 213
6.5.1 遊戲場景管理類——SceneManager 213
6.5.2 載入布景類——BeginLayer 215
6.5.3 主界面布景類——SelectLayer 216
6.5.4 音效布景類——
SettingLayer 219
6.5.5 2D布景類——
Game2DLayer 220
6.5.6 3D布景類——
Game3DLayer 223
6.5.7 物理世界類——GamePhysicsWorld 226
6.6 輔助類 228
6.6.1 獎勵特效類——AwardBox 228
6.6.2 子彈類——Bullet 229
6.6.3 飛彈類——Rocket 231
6.6.4 底盤類——Disc 232
6.6.5 卡丁車類——Kart 235
6.7 引擎引用入口類——AppDelegate 246
6.8 引擎的修改 247
6.9 遊戲的最佳化及改進 248
6.10 本章小結 248
第7章 休閒體育類遊戲——森林跑酷 249
7.1 遊戲的背景及功能概述 249
7.1.1 背景描述 249
7.1.2 功能介紹 249
7.2 遊戲的策劃及準備工作 253
7.2.1 遊戲的策劃 253
7.2.2 手機平台下遊戲的準備
工作 253
7.3 遊戲的架構 257
7.3.1 各個類的簡要介紹 257
7.3.2 遊戲框架簡介 258
7.4 布景相關類 259
7.4.1 場景管理類GameSceneManager 259
7.4.2 遊戲載入布景類LoadingLayer 261
7.4.3 遊戲主選單布景類MainMenuLayer 264
7.4.4 選擇遊戲角色布景類SelectRoleLayer 272
7.4.5 2D遊戲布景類
My2DLayer 275
7.4.6 3D遊戲布景類
My3DLayer 281
7.4.7 遊戲得分布景類
ScoreLayer 298
7.5 輔助工具類相關 301
7.5.1 工具類 301
7.5.2 輔助類 302
7.6 引擎引用入口類——AppDelegate 310
7.7 遊戲的最佳化及改進 311
7.8 本章小結 311
第8章 飛行射擊類遊戲——雷鳴戰機 312
8.1 遊戲的背景及功能概述 312
8.1.1 背景概述 312
8.1.2 功能簡介 313
8.2 遊戲的策劃及準備工作 315
8.2.1 遊戲的策劃 315
8.2.2 安卓平台下遊戲開發的準備工作 315
8.3 遊戲的架構 318
8.3.1 程式結構的簡要介紹 318
8.3.2 伺服器端的簡要介紹 318
8.3.3 手機客戶端的簡要介紹 319
8.3.4 遊戲框架簡介 321
8.4 伺服器端的開發 322
8.4.1 數據類的開發 322
8.4.2 服務執行緒的開發 323
8.4.3 收發數據工具類的開發 325
8.4.4 輔助工具類的開發 327
8.4.5 動作執行類的開發 328
8.4.6 狀態更新類的開發 332
8.5 布景相關類 333
8.5.1 選單布景類MainMenuScene 333
8.5.2 遊戲模式布景類NetLayer 337
8.5.3 幫助布景類HelpLayer 340
8.5.4 飛機強化布景類WeaponLayer 343
8.5.5 關卡選擇布景類SelectGameLayer 344
8.5.6 飛機選擇布景類SelectPlaneLayer 346
8.5.7 遊戲2D布景類
My2DLayer 348
8.5.8 單機遊戲3D布景類First3DLayer 351
8.5.9 聯網遊戲3D布景類Web3DLayer 353
8.6 輔助工具類 354
8.6.1 網路通信工具類BNSocketUtil 354
8.6.2 戰機類的開發 357
8.6.3 敵機工具類 362
8.6.4 子彈工具類 367
8.6.5 爆炸工具類 369
8.7 遊戲的最佳化及改進 371
第9章 棋牌類遊戲——天下棋奕 372
9.1 遊戲的背景及功能概述 372
9.1.1 背景概述 372
9.1.2 功能介紹 373
9.2 遊戲的策劃及準備工作 374
9.2.1 遊戲的策劃 374
9.2.2 安卓平台下遊戲開發的準備工作 375
9.3 遊戲的架構 379
9.3.1 網路遊戲架構簡介 379
9.3.2 伺服器端的簡要介紹 379
9.3.3 客戶端的簡要介紹 380
9.3.4 遊戲框架簡介 381
9.4 伺服器端的開發 382
9.4.1 數據類的開發 382
9.4.2 服務執行緒的開發 383
9.4.3 收發數據工具類的開發 386
9.4.4 走棋判斷工具類的開發 387
9.5 輔助工具類 390
9.5.1 網路通信工具類BNSocketUtil 390
9.5.2 計算輔助類PublicApi 393
9.5.3 水波類Water 394
9.6 布景相關類的開發 397
9.6.1 遊戲場景管理類——GameSceneManager 397
9.6.2 遊戲資源載入布景類——LoadingLayer 399
9.6.3 遊戲主選單布景類——MainMenuLayer 404
9.6.4 遊戲幫助選單布景類——HelpLayer 412
9.6.5 單機遊戲3D布景類——3DLayer 415
9.6.6 聯網遊戲3D布景類——WebLayer 420
9.7 引擎引用入口類——AppDelegate 423
9.8 遊戲的最佳化及改進 424
9.9 本章小結 424
第 10章 VR休閒遊戲——極速飛行 425
10.1 遊戲背景及功能概述 425
10.1.1 遊戲開發背景概述 425
10.1.2 遊戲功能簡介 425
10.2 遊戲的策劃及準備工作 426
10.2.1 遊戲的策劃 427
10.2.2 遊戲的開發準備工作 427
10.3 遊戲的架構 429
10.3.1 各類的簡要介紹 429
10.3.2 遊戲框架簡介 430
10.4 布景相關類 431
10.4.1 總場景管理類——ObjSceneManager 431
10.4.2 3D布景類——
My3DLayer 432
10.5 輔助類 438
10.5.1 繪製順序 438
10.5.2 模型創建類——ModelCreate 439
10.5.3 鏡頭光暈原理 441
10.5.4 光暈類——Flare 442
10.5.5 地形類——MyTerrain 443
10.5.6 常量類——Constant 444
10.6 工具管理類 446
10.6.1 攝像機管理類——CameraControl 446
10.6.2 光暈管理類——
FlareControl 447
10.6.3 遊戲管理類——GameControl 448
10.6.4 無窮地形原理 449
10.6.5 地形管理類——TerrainControl 451
10.7 引擎引用入口類 454
10.8 材質系統與著色器的開發 455
10.8.1 地形的材質系統 455
10.8.2 選單的材質系統 457
10.8.3 光暈的材質系統 458
10.9 遊戲的特別說明及最佳化改進 460
10.9.1 特別說明 460
10.9.2 遊戲的最佳化改進 460
10.10 本章小結 461