第1章 歡迎來到HTML5的世界
1.1 什麼是HTML5
1.2 HTML5的前世今生
1.3 W3C與WHATWG工作組
1.4 令人稱贊的Canvas與WebGL
1.4.1 Canvas
1.4.2 WebGL
1.5 何為HTML5遊戲
1.5.1 從技術角度齣發
1.5.2 從非技術角度齣發
1.6 HTML5遊戲的特點與痛點
1.6.1 特點
1.6.2 痛點
1.7 HTML5遊戲的當下與未來
1.7.1 産品研發階段
1.7.2 測試上綫運營階段
1.7.3 未來
1.8 小結
第2章 奇妙的前端之旅
2.1 JavaScript的苦與痛
2.2 偉大的ECMAScript標準
2.2.1 ECMAScript標準是什麼
2.2.2 曆史
2.2.3 版本
2.3 JavaScript的代替品:Dart、CoffeeScript、TypeScript
2.3.1 Dart
2.3.2 CoffeeScript
2.3.3 TypeScript
2.4 初齣茅廬的WebAssembly
2.4.1 WebAssembly是什麼
2.4.2 asm.js
2.5 HTML5遊戲開發利器——遊戲引擎
2.6 一個神器:Egret Runtime
2.6.1 什麼是Egret Runtime
2.6.2 為什麼要用 Egret Runtime
2.7 小結
第3章 Hello Egret
3.1 Egret 引擎簡介
3.1.1 Egret引擎的特點
3.1.2 Egret引擎的主要功能
3.1.3 Egret引擎的應用案例
3.2 搭建開發環境
3.2.1 Egret引擎版本的選擇
3.2.2 Egret Wing:強大的IDE工具
3.2.3 ResDepot:資源管理工具
3.2.4 Texture Merger:資源打包工具
3.3 Hello World
3.3.1 創建第一個項目
3.3.2 運行項目
3.3.3 修改一下,成為自己的Hello World
3.4 Hello World分析
3.4.1 項目源代碼目錄
3.4.2 項目配置文件
3.4.3 項目運行庫
3.4.4 項目編譯目錄
3.4.5 項目資源目錄
3.4.6 項目發布目錄
3.5 庫與代碼風格
3.5.1 Egret引擎的代碼風格
3.5.2 核心庫與擴展庫的使用方法
3.5.3 第三方庫的集成方法
3.6 命令行模式詳解
3.6.1 創建項目
3.6.2 編譯項目
3.6.3 運行項目
3.6.4 發布項目
3.6.5 瞭解更多
3.7 小結
第4章 遊戲的基礎知識
4.1 顯示對象
4.1.1 什麼是顯示對象
4.1.2 坐標係
4.1.3 顯示對象的種類
4.1.4 顯示列錶
4.2 顯示對象的架構
4.2.1 容器與非容器
4.2.2 DisplayObject類 與 DisplayObjectContainer類
4.2.3 Sprite與Shape
4.3 Shape矢量圖
4.3.1 繪製矩形
4.3.2 清空繪圖
4.3.3 繪製圓形
4.3.4 繪製直綫
4.3.5 繪製麯綫
4.3.6 繪製圓弧
4.3.7 多個形狀的繪製
4.4 顯示列錶與容器類
4.4.1 關於顯示容器
4.4.2 添加與刪除顯示對象
4.4.3 顯示對象操作的注意點
4.5 遮罩與碰撞檢測
4.5.1 遮罩的使用
4.5.2 非精確碰撞檢測
4.5.3 精確碰撞檢測
4.5.4 包圍盒碰撞
4.6 混閤模式
4.6.1 NORMAL模式
4.6.2 ADD模式
4.6.3 ERASE模式
4.7 小結
第5章 事件與用戶交互
5.1 事件消息機製
5.1.1 事件處理機製的原理
5.1.2 第一個事件處理的例子
5.1.3事件流機製
5.2 事件
5.2.1 事件類
5.2.2 自定義事件
5.3 偵聽器
5.3.1 創建偵聽器
5.3.2 注冊偵聽器與移除偵聽器
5.3.3 偵聽器中的this
5.4 事件的優先級
5.5 自定義事件發送類
5.5.1 繼承EventDispatcher
5.5.2 復閤EventDispatcher
5.5.3 實現IEventDispatcher接口
5.6 觸摸事件
5.6.1 觸摸事件類型
5.6.2 開啓touchEnable
5.7 實踐:同色點點看
5.8 小結
第6章 遊戲資源管理
6.1 RES資源加載模塊
6.2 資源配置文件
6.3 加載資源配置文件
6.3.1 外部文件
6.3.2 直接讀取
6.3.3 對比說明
6.4 預加載資源組
6.5 動態創建資源組
6.6 讀取資源文件
6.7 資源的緩存機製
6.8 釋放資源
6.9 內置文件類型解析器
6.9.1 配置九宮格參數
6.9.2 配置聲音資源
6.9.3 讀取解析二進製文件
6.10 擴展資源文件類型解析器
6.11 小結
第7章 位圖操作
7.1 創建位圖
7.1.1 認識位圖
7.1.2 位圖格式
7.1.3 位圖來源
7.1.4 位圖加載
7.1.5 位圖顯示
7.2 操作紋理集
7.2.1 從RES中獲取紋理
7.2.2 SpriteSheet紋理集類
7.3 紋理填充方式
7.3.1 位圖填充拉伸以填充區域
7.3.2 重復位圖以填充區域
7.4 位圖的九宮格
7.4.1 緣起
7.4.2 九宮格原理
7.4.3 代碼中使用九宮格
7.4.4 通過ResDepot設置九宮格
7.5 濾鏡
7.5.1 濾鏡可用性及WebGL開關
7.5.2 發光濾鏡
7.5.3 投影濾鏡
7.5.4 顔色矩陣濾鏡
7.5.5 模糊濾鏡
7.5.6 設置濾鏡品質
7.5.7 濾鏡使用優化技巧
7.6 實踐:《抓間諜》
7.6.1 遊戲設計稿
7.6.2 準備素材
7.6.3 編寫代碼
7.7 小結
第8章 文本
8.1 普通文本
8.1.1 創建普通文本
8.1.2 設置文本樣式
8.1.3 字體的設置
8.1.4 多樣式混閤文本
8.1.5 設置文本超鏈接
8.2 輸入文本
8.2.1 創建可輸入文本
8.2.2 設置輸入文本樣式
8.3 位圖文本
8.3.1 創建位圖文本字體
8.3.2 位圖文本的使用
8.4 實踐:遊戲登錄和活動公告闆
8.5 小結
第9章 動畫與粒子特效
9.1 逐幀動畫
9.1.1 逐幀動畫簡介
9.1.2 動畫素材製作方法
9.1.3 創建一個逐幀動畫
9.1.4 播放和暫停動畫
9.1.5 跳轉動畫
9.1.6 動態切換動畫數據
9.1.7 動畫的緩存機製
9.1.8 動畫數據詳解
9.2 緩動動畫
9.2.1 Tween緩動動畫
9.2.2 緩動的基本用法
9.2.3 緩動對象的基本控製參數
9.2.4 緩動對象的緩動變化事件
9.2.5 緩動過程參數設定
9.2.6 緩動對象的其他方法
9.3 粒子特效
9.3.1 粒子係統簡介
9.3.2 粒子係統使用
9.3.3 自定義粒子特效
9.4 小結
第10章 音樂與音效
10.1 聲音類
10.1.1 egret.Sound 類
10.1.2使用聲音類
10.2 音頻控製類
10.2.1 播放
10.2.2 音量
10.2.3 暫停
10.3 聲音事件
10.4 音樂與音效類型設置
10.5 小結
第11章 數據操作
11.1 JSON數據操作
11.1.1 JSON數據格式簡介
11.1.2 為什麼使用JSON數據格式
11.1.3 在Egret中加載JSON數據
11.1.4 在Egret中操作JSON數據
11.2 二進製數據操作
11.2.1 讀取二進製數據對象
11.2.2 寫入字節流
11.2.3 定位字節流指針
11.2.4 讀取字節流
11.2.5 大端模式與小端模式
11.3 實踐:仿《找你妹》遊戲
11.3.1 遊戲策劃案
11.3.2 準備資源
11.3.3 編寫代碼
11.4 小結
第12章 網絡通信
12.1 HTTP網絡請求
12.1.1 構建簡單的網絡請求
12.1.2 POST 與 GET 請求
12.1.3 發送帶有數據的網絡請求
12.1.4 檢測網絡請求狀態
12.2 WebSocket通信
12.2.1 創建WebSocket連接
12.2.2 發送數據
12.2.3 讀取數據
12.2.4 WebSocket的網絡狀態
12.2.5 斷開與重連服務器
12.3 實踐:遊戲中的聊天室
12.4 小結
第13章 計時器與心跳控製器
13.1 Timer
13.1.1 創建計時器
13.1.2 加入計時器事件偵聽
13.1.3 啓動計時器
13.1.4 修改計時器時間間隔
13.1.5 修改計時器
13.2 Ticker
13.2.1 Ticker與Timer的不同
13.2.2 開啓心跳偵聽
13.2.3 移除心跳偵聽
13.2.4 Ticker的最新用法
13.3 setTimeout與clearTimeout
13.4 getTimer
13.5 《抓間諜》和《找你妹》
13.5.1 《抓間諜》
13.5.2 《找你妹》
13.6 小結
第14章 反射機製與依賴注入
14.1 反射機製
14.1.1 什麼是反射機製
14.1.2 getDefinitionByName方法
14.1.3 獲取運行時對象類型
14.1.4 檢查域內定義
14.2 依賴注入
14.2.1 什麼是依賴注入
14.2.2 Injector注入器
14.2.3 注入器的應用場景
14.3 小結
第15章 屏幕適配與環境交互
15.1 4種屏幕適配策略
15.1.1 設置屏幕適配策略
15.1.2 exactFit 模式
15.1.3 noScale 模式
15.1.4 showAll 模式
15.1.5 fixedWidth模式和fixedHeight模式
15.1.6 noBorder模式
15.1.7 在程序內設置縮放模式
15.2 屏幕方嚮設置
15.2.1 竪屏模式
15.2.2 橫屏模式
15.2.3 反嚮橫屏模式
15.2.4 自動模式
15.3 環境交互
15.3.1 Egret與網頁JavaScript交互
15.3.2 讀取網頁GET參數
15.4 小結
第16章 調試與性能檢測
16.1 TypeScript斷點調試
16.2 日誌輸齣麵闆
16.2.1 打開日誌顯示開關
16.2.2 輸齣日誌
16.2.3 顯示髒矩形和幀頻信息
16.3 Egret Inspector瀏覽器調試工具
16.3.1 安裝Egret Inspector
16.3.2 運行Egret Inspector
16.4 小結
第17章 打包發布到原生平颱
17.1 打包原生APP原理
17.1.1 編譯型語言和解釋型語言
17.1.2 瀏覽器內核與JavaScript解釋器
17.2 打包為iOS原生APP
17.2.1 下載Egret iOS Support
17.2.2 將HTML5遊戲打包為iOS原生APP
17.3 打包為Android原生APP
17.3.1 下載Egret Android Support
17.3.2 將HTML5遊戲打包為Android原生APP
17.4 打包為Runtime版本
17.4.1 打包Egret Runtime版本
17.4.2 測試Runtime版本遊戲
17.4.3 Egret Runtime 中的白名單
17.5 小結
第18章 DragonBones骨骼動畫係統
18.1 DragonBones簡介
18.1.1 DragonBones的由來
18.1.2 DragonBones産品傢族
18.1.3 DragonBones産品特點
18.2 2D骨骼動畫的基本概念
18.2.1 骨骼動畫的優勢和原理
18.2.2 DragonBones 2D骨骼動畫中的常用術語
18.3 DragonBones Pro介紹
18.3.1 DragonBones Pro的下載與安裝
18.3.2 編輯界麵詳解
18.3.3 基本動畫項目
18.3.4 項目的導入與導齣
18.4 DragonBones骨骼動畫開發入門
18.4.1 做好準備工作
18.4.2 學習一個示例
18.5 DragonBones骨骼動畫數據格式詳解
18.5.1 DragonBones 4.0 格式說明
18.5.2 Armature 數據格式
18.5.3 Bone 數據格式
18.5.4 Slot 數據格式
18.5.5 Skin 數據格式
18.5.6 Animation數據格式
18.6 DragonBones骨骼動畫事件係統詳解
18.7 DragonBones常用高級功能
18.7.1 動態換裝
18.7.2 程序控製骨骼運動
18.7.3 改變動畫速度
18.7.4 動畫復用
18.7.5 動畫遮罩與混閤
18.8 DragonBones極速模式
18.8.1 極速模式簡介
18.8.2 快速使用極速模式
18.8.3 極速模式詳解
18.8.4 深入使用數據緩存
18.9 小結
第19章 P2物理引擎
19.1 P2物理引擎簡介
19.1.1 什麼是P2物理引擎
19.1.2 創建一個P2物理項目
19.1.3 用p2DebugDraw實現模擬視圖
19.2 P2中的形狀
19.2.1 形狀
19.2.2 形狀屬性
19.2.3 形狀貼圖
19.3 剛體屬性
19.3.1 速度相關
19.3.2 角度相關
19.3.3 對象相關
19.3.4 其他屬性
19.4 剛體操作
19.4.1 addBody和removeBody
19.4.2 addShape和removeShape
19.4.3 adjustCenterOfMass
19.4.4 applyForce
19.4.5 applyImpulse
19.4.6 sleep和wakeup
19.4.7 emit、on、off、has
19.4.8 fromPolygon
19.4.9 hitTest
19.4.10 getAABB
19.4.11 getArea
19.4.12 setDensity
19.4.13 overlaps
19.4.14 toWorldFrame和toLocalFrame
19.4.15 rayCast
19.4.16 RayCastResult類
19.4.17 Raycast應用實例
19.5 碰撞處理
19.5.1 認識碰撞
19.5.2 碰撞事件
19.5.3 碰撞信息Equation
19.6 關節
19.6.1 DistanceConstraint
19.6.2 GearConstraint
19.6.3 LockConstraint
19.6.4 PrismaticConstraint
19.6.5 RevoluteConstraint
19.7 彈簧
19.7.1 LinearSpring
19.7.2 RotationalSpring
19.8 小結
· · · · · · (
收起)