作者序
手機遊戲市場越來越紅,Cocos2d 團隊推出了Cocos2d-x 遊戲引擎,它的優勢在於在一個平台下開發,多平台發佈。目前很多開發團體都轉型使用Cocos2d-x 開發遊戲。
本書的撰寫歷經5 個月的時間,從Cocos2d-JS 3.0 alpha0 到Cocos2d-JS 3.0 最後版本經歷了多個版本的變化,而且Cocos2d-JS 3 各個版本之間有很多的變化,每次都重新修改案例、修改書中內容。
為了更進一步為讀者們提供服務,專門為本書建立一個網站http://www.cocoagame.net,大家可以檢視相關出版進度,並對書中內容發表評論,提出寶貴意見。
✤ 關於原始程式碼
書中包含了100 多個完整的案例專案原始程式碼,讀者可到佳魁官網http://www.topteam.cc 下載,由於本書原作者持續更新,因此最新簡體中文版程式碼,請到http://www.cocoagame.net 下載。
本書主要由關東升撰寫,賈雲龍、趙大羽、李玉超、趙志榮、關珊和李政剛也參與了本書的撰寫工作。感謝趙大羽老師手繪了書中的全部草圖,並從專業的角度修改增強,力求完美地呈現給讀者們。感謝我的家人給予了我鼎力的支援,使我能投入全部精力,專心撰寫此書。
由於手機遊戲發展快速,撰寫時間倉促,書中難免存在不妥之處,敬請讀者提出寶貴意見。
手機遊戲市場越來越紅,Cocos2d 團隊推出了Cocos2d-x 遊戲引擎,它的優勢在於在一個平台下開發,多平台發佈。目前很多開發團體都轉型使用Cocos2d-x 開發遊戲。
本書的撰寫歷經5 個月的時間,從Cocos2d-JS 3.0 alpha0 到Cocos2d-JS 3.0 最後版本經歷了多個版本的變化,而且Cocos2d-JS 3 各個版本之間有很多的變化,每次都重新修改案例、修改書中內容。
為了更進一步為讀者們提供服務,專門為本書建立一個網站http://www.cocoagame.net,大家可以檢視相關出版進度,並對書中內容發表評論,提出寶貴意見。
✤ 關於原始程式碼
書中包含了100 多...
目錄
前言
Chapter 01 準備開始
1.1 本書學習路線圖
1.2 使用實例程式
PART 1 基礎篇
Chapter 02 JavaScript 語言基礎
2.1 環境架設
2.2 識別符號和保留字
2.3 常數和變數
2.4 註釋
2.5 JavaScript 資料類型
2.6 運算子
2.7 控制敘述
2.8 陣列
2.9 函數
2.10 JavaScript 中的物件導向
2.11 Cocos2d-JS 中的JavaScript 繼承
Chapter 03 Hello Cocos2d-JS
3.1 行動平台遊戲引擎
3.2 Cocos2d 遊戲引擎
3.3 架設Cocos2d-JS 開發環境
3.4 第一個Cocos2d-JS 遊戲
3.5 Cocos2d-JS 核心概念
3.6 Node 與Node 層級架構
3.7 Cocos2d-JS 座標系
Chapter 04 標籤和選單
4.1 使用標籤
4.2 使用選單
Chapter 05 精靈
5.1 Sprite 精靈類別
5.2 精靈的效能最佳化
Chapter 06 場景與層
6.1 場景與層的關係
6.2 場景切換
6.3 場景的生命週期
Chapter 07 動作、特效和動畫
7.1 動作
7.2 特效
7.3 動畫
Chapter 08 Cocos2d-JS 使用者事件
8.1 事件處理機制
8.2 觸控事件
8.3 鍵盤事件
8.4 滑鼠事件
8.5 加速度計與加速度事件
PART 2 進階篇
Chapter 09 遊戲背景音樂與音效
9.1 Cocos2d-JS 中音訊檔案
9.2 使用AudioEngine 引擎
9.3 實例:設定背景音樂與音效
Chapter 10 粒子系統
10.1 問題的提出
10.2 粒子系統基本概念
10.3 Cocos2d-JS 內建粒子系統
10.4 自訂粒子系統
Chapter 11 圖磚地圖
11.1 地圖效能問題
11.2 Cocos2d-JS 中圖磚地圖API
11.3 實例:忍者無敵
Chapter 12 物理引擎
12.1 使用物理引擎
12.2 Chipmunk 引擎
12.3 Box2D 引擎
PART 3 資料與網路篇
Chapter 13 資料持久化
13.1 Cocos2d-JS 中的資料持久化
13.2 localStorage 資料持久化
Chapter 14 HTTP 網路通訊
14.1 網路結構
14.2 HTTP 與HTTPS
14.3 使用XMLHttpRequest 物件開發用戶端
14.4 資料交換格式
14.5 JSON 資料交換格式
Chapter 15 以Node.js 為基礎的Socket.IO 網路通訊
15.1 Node.js
15.2 使用Socket.IO
15.3 實例:Socket.IO 重構MyNotes
PART 4 最佳化篇
Chapter 16 效能最佳化
16.1 快取建立和清除
16.2 圖片與紋理最佳化
16.3 JSB 記憶體管理
16.4 使用Bake 層
16.5 使用物件集區
PART 5 多平台移植篇
Chapter 17 移植到Web 平台
17.1 Web 伺服器與移植
17.2 問題整理
Chapter 18 發佈到本機iOS 平台
18.1 iOS 開發環境架設
18.2 建立本機專案
18.3 編譯與移植
18.4 移植問題整理
18.5 多解析度螢幕轉換
Chapter 19 移植到本機Android 平台
19.1 架設交換編譯和包裝環境
19.2 交換編譯
19.3 包裝執行
19.4 移植問題整理
PART 6 實戰篇
Chapter 20 使用Git 管理程式碼版本
20.1 程式版本管理工具-- Git
20.2 程式託管服務-- GitHub
20.3 實例:Cocos2d-JS 遊戲專案協作開發
Chapter 21 Cocos2d-JS 敏捷開發專案實戰-- 迷失航線手機遊戲
21.1 迷失航線遊戲分析與設計
21.2 工作1:遊戲專案的建立與初始化
21.3 工作2:建立Loading 場景
21.4 工作3:建立Home 場景
21.5 工作4:建立設定場景
21.6 工作5:建立說明場景
21.7 工作6:遊戲場景實現
21.8 工作7:遊戲結束場景
Chapter 22 為迷失航線遊戲增加廣告
22.1 使用GoogleAdMob 廣告
22.2 為迷失航線遊戲Android 平台增加AdMob 廣告
22.3 為迷失航線遊戲iOS 平台增加AdMob 廣告
Chapter 23 把迷失航線遊戲發佈到Google play 市集
23.1 GoogleAndroid 市集Google play
23.2 還有「最後一公里」
23.3 發佈產品
Chapter 24 把迷失航線遊戲發佈到蘋果App Store 市集
24.1 蘋果的App Store
24.2 iOS 裝置測試
24.3 還有「最後一公里」
24.4 發佈產品
24.5 常見審核不通過的原因
前言
Chapter 01 準備開始
1.1 本書學習路線圖
1.2 使用實例程式
PART 1 基礎篇
Chapter 02 JavaScript 語言基礎
2.1 環境架設
2.2 識別符號和保留字
2.3 常數和變數
2.4 註釋
2.5 JavaScript 資料類型
2.6 運算子
2.7 控制敘述
2.8 陣列
2.9 函數
2.10 JavaScript 中的物件導向
2.11 Cocos2d-JS 中的JavaScript 繼承
Chapter 03 Hello Cocos2d-JS
3.1 行動平台遊戲引擎
3.2 Cocos2d 遊戲引擎
3.3 架設Cocos2d-JS 開發環境
3.4 第一個Cocos2d-JS 遊戲
3.5 Cocos2d-JS 核心概念
3.6 Node 與Node 層級架構
3.7 Cocos2d-JS 座標系
Chap...