序一
序二
前言
第一部分 準備篇
第1章 認識Cocos Creator2
1.1 什麼是Cocos Creator2
1.1.1 Cocos Creator的由來3
1.1.2 Cocos Creator的組成4
1.1.3 Cocos Creator的特點5
1.2 Cocos Creator的基本架構和工作流5
1.2.1 Cocos Creator的架構6
1.2.2 Cocos Creator的工作流程6
1.2.3 Cocos Creator 2.0版本7
1.2.4 升級你的項目到Cocos Creator 2.0版本8
1.3 為何選擇Cocos Creator9
1.3.1 Cocos Creator和Cocos2D-X9
1.3.2 Cocos Creator和Unity10
1.3.3 學習Cocos Creator需要的知識11
1.4 本章小結11
第2章 搭建跨平颱的開發環境12
2.1 Cocos Creator的安裝配置12
2.1.1 Cocos Creator的運行編譯環境13
2.1.2 Cocos Creator安裝過程13
2.2 原生平颱的基本介紹和項目導齣14
2.2.1 Android平颱的基本介紹14
2.2.2 iOS平颱的基本介紹15
2.2.3 原生平颱的導齣16
2.2.4 調用原生平颱的代碼17
2.3 HTML5基本介紹和項目導齣19
2.3.1 HTML5簡介19
2.3.2 構建和發布20
2.4 本章小結20
第二部分 基礎篇
第3章 Cocos Creator的場景製作22
3.1 認識Cocos Creator編輯器22
3.1.1 Cocos Creator基本界麵22
3.1.2 Cocos Creator編輯器的布局23
3.2 Cocos Creator中的節點和組件24
3.2.1 Cocos Creator中的節點24
3.2.2 Cocos Creator中的組件24
3.3 Cocos Creator中的坐標係25
3.3.1 笛卡兒坐標係25
3.3.2 標準屏幕坐標係25
3.3.3 世界坐標係26
3.3.4 本地坐標係26
3.3.5 節點的錨點26
3.4 創建你的第一個Cocos Creator項目27
3.4.1 創建項目27
3.4.2 項目結構28
3.5 本章小結29
第4章 Cocos Creator的資源管理30
4.1 圖片資源的管理30
4.1.1 圖片資源的導入30
4.1.2 圖集資源的製作和導入31
4.2 聲音資源的管理32
4.2.1 WebAudio方式加載音頻33
4.2.2 DomAudio方式加載音頻33
4.3 預製體的創建和使用34
4.3.1 何為預製體34
4.3.2 預製體的創建和使用34
4.4 字體資源的管理35
4.4.1 位圖字體的製作35
4.4.2 位圖字體的導入和使用39
4.5 粒子資源管理39
4.5.1 粒子係統39
4.5.2 粒子係統的特點和構成40
4.5.3 Cocos Creator中的粒子資源41
4.6 Tiled地圖集資源管理41
4.6.1 Tiled地圖編輯器42
4.6.2 地圖資源文件的導入和使用42
4.7 資源的導入和導齣44
4.7.1 資源的導齣44
4.7.2 資源的導入44
4.8 本章小結45
第5章 Cocos Creator腳本編程46
5.1 JavaScript基礎46
5.1.1 JavaScript的變量及內置類型47
5.1.2 JavaScript的操作符和控製結構49
5.1.3 JavaScript實現麵嚮對象50
5.2 Cocos Creator中的JavaScript51
5.2.1 創建和使用組件腳本51
5.2.2 使用cc.Class聲明53
5.2.3 TiledMap地圖操作55
5.2.4 腳本生命周期57
5.2.5 節點基本操作57
5.3 使用JavaScript進行資源管理58
5.3.1 使用JavaScript管理場景58
5.3.2 使用JavaScript管理資源59
5.4 JavaScript的組織模式62
5.4.1 模塊化腳本62
5.4.2 插件化腳本63
5.5 JavaScript對象池64
5.5.1 對象池的概念64
5.5.2 對象池的使用64
5.6 本章小結65
第6章 Cocos Creator的UI係統66
6.1 基礎渲染組件66
6.1.1 精靈組件66
6.1.2 Sprite的混閤69
6.1.3 Label組件70
6.1.4 Camera攝像機72
6.2 Cocos Creator中的事件係統73
6.2.1 節點係統事件75
6.2.2 全局係統事件76
6.3 UI界麵的適配和布局77
6.3.1 分辨率的適配78
6.3.2 UI界麵的對齊策略79
6.4 常用的UI組件80
6.4.1 布局組件Layout81
6.4.2 按鈕組件82
6.4.3 輸入框組件EditBox84
6.4.4 富文本組件RichText86
6.4.5 進度條組件ProgressBar88
6.4.6 滑動器組件Slider89
6.4.7 頁麵容器89
6.4.8 復選框組件91
6.4.9 滾動列錶92
6.5 實例:卡牌遊戲的經典UI界麵93
6.5.1 UI界麵的設計93
6.5.2 UI界麵功能製作94
6.5.3 界麵相關邏輯開發95
6.6 本章小結98
第7章 Cocos Creator的動畫係統99
7.1 Cocos Creator的動畫係統99
7.1.1 Cocos Creator中的動作100
7.1.2 Cocos Creator的動畫編輯器105
7.1.3 動畫組件Animation和動畫切片剪輯106
7.1.4 通過代碼控製動畫109
7.2 在Cocos Creator中使用粒子特效113
7.3 骨骼動畫—DragonBone114
7.3.1 龍骨的基本介紹115
7.3.2 在Cocos Creator中使用骨骼動畫116
7.4 Spine動畫120
7.4.1 Spine的基本介紹120
7.4.2 在Cocos Creator中使用Spine動畫121
7.5 實例:卡牌遊戲經典戰鬥場景126
7.5.1 戰鬥場景的設計126
7.5.2 戰鬥場景的具體邏輯開發127
7.6 本章小結134
第8章 Cocos Creator的物理係統136
8.1 Cocos Creator的碰撞係統136
8.1.1 編輯碰撞組件137
8.1.2 碰撞分組管理138
8.1.3 使用腳本處理碰撞係統139
8.1.4 使用碰撞係統的示例141
8.2 Cocos Creator中的Box2D145
8.2.1 Box2D簡介145
8.2.2 Cocos Creator中的Box2D146
8.2.3 Cocos Creator中的Box2D組件148
8.3 本章小結153
第三部分 實例篇
第9章 消除類遊戲:快樂消消樂156
9.1 三消遊戲的特點156
9.2 快樂消消樂遊戲簡介156
9.3 遊戲模塊的開發158
9.3.1 開始遊戲模塊158
9.3.2 遊戲初始化模塊160
9.3.3 初始化“棋盤”162
9.3.4 處理用戶輸入和物塊消除邏輯164
9.3.5 聲音和暫停172
9.4 本章小結174
第10章 射擊類遊戲:飛機大戰175
10.1 縱版射擊遊戲的特點175
10.2 飛機大戰遊戲簡介176
10.3 遊戲模塊的開發178
10.3.1 開始遊戲模塊179
10.3.2 選擇角色模塊實現181
10.3.3 遊戲主界麵顯示模塊183
10.3.4 敵機模塊185
10.3.5 主角飛機模塊187
10.3.6 遊戲控製邏輯189
10.4 本章小結192
第11章 棋牌類遊戲:歡樂鬥地主193
11.1 棋牌類遊戲特點193
11.2 鬥地主遊戲簡介194
11.3 遊戲模塊的開發195
11.3.1 開始遊戲模塊196
11.3.2 卡牌類和玩傢類197
11.3.3 遊戲規則模塊200
11.3.4 搶地主模塊203
11.3.5 正式遊戲模塊207
11.4 本章小結212
第四部分 擴展篇
第12章 使用Cocos Creator開發微信小遊戲214
12.1 微信簡介214
12.2 微信小程序215
12.2.1 微信小程序簡介216
12.2.2 申請開發賬號216
12.2.3 微信小程序開發工具219
12.2.4 微信小程序程序結構220
12.2.5 發布和上綫225
12.3 微信小遊戲226
12.3.1 微信小遊戲簡介226
12.3.2 微信小遊戲的開發228
12.3.3 使用Cocos Creator導齣微信小遊戲項目231
12.3.4 微信小遊戲的資源管理233
12.3.5 接入微信小遊戲的子域234
12.4 本章小結238
第13章 遊戲中的地圖算法239
13.1 Roguelike地圖生成算法239
13.1.1 Roguelike遊戲240
13.1.2 地圖生成算法240
13.1.3 地圖生成算法的具體實現241
13.2 A星算法249
13.2.1 啓發式搜索算法原理249
13.2.2 什麼是A星搜索249
13.2.3 A星算法在JavaScript中的實現251
13.2.4 跳點搜索257
13.3 本章小結261
第14章 Cocos Creator的擴展263
14.1 第一個擴展包263
14.1.1 Node.js的package.json264
14.1.2 Cocos Creator的第一個擴展包—Hello World266
14.1.3 進程間通信—IPC267
14.2 深入開發擴展269
14.2.1 入口程序269
14.2.2 為擴展包開發相應的功能270
14.2.3 擴展主菜單271
14.2.4 擴展編輯麵闆272
14.2.5 進程間通信的工作流程275
14.2.6 為插件提供組件和資源276
14.3 開發擴展頁麵276
14.3.1 定製界麵模闆276
14.3.2 界麵排版278
14.3.3 界麵元素279
14.4 擴展商店—Cocos Store280
14.4.1 從擴展商店獲取插件280
14.4.2 提交插件到擴展商店280
14.5 多語言支持—i18n283
14.5.1 遊戲開發的多語言化283
14.5.2 插件多語言285
14.6 本章小結286
第15章 Cocos Creator中的網絡和SDK287
15.1 Cocos Creator中的網絡接口288
15.1.1 XMLHttpRequest的使用288
15.1.2 WebSocket的使用290
15.1.3 SoekctIO的使用293
15.2 熱更新解決方案295
15.2.1 Cocos引擎的熱更新原理及流程295
15.2.2 Cocos引擎的熱更新的使用方法299
15.3 Cocos Creator與遊戲平颱SDK301
15.3.1 AnySDK簡介302
15.3.2 在Cocos Creator中使用AnySDK303
15.3.3 Cocos Analytics簡介304
15.3.4 在Cocos Creator中使用Cocos Analytics305
15.4 本章小結306
第16章 遊戲開發優化307
16.1 Cocos引擎渲染原理307
16.1.1 OpenGL ES簡介308
16.1.2 可編程管綫309
16.1.3 著色器310
16.1.4 Cocos引擎渲染原理315
16.1.5 在Cocos2D-X中使用shader319
16.1.6 實例:在Cocos Creator中使用shader321
16.2 遊戲常用的設計模式328
16.2.1 命令模式329
16.2.2 享元模式330
16.2.3 觀察者模式331
16.2.4 狀態模式331
16.2.5 單例模式333
16.3 Cocos引擎遊戲的性能優化334
16.3.1 Cocos2D-X的內存管理334
16.3.2 資源的優化337
16.3.3 利用Cocos2D-X的特性進行性能優化338
16.3.4 異步加載339
16.4 本章小結341
附錄A 粒子特效的製作342
附錄B Tiled地圖的製作355
· · · · · · (
收起)