目錄
第1章Cocos2dLua
1.1Cocos2d簡介
1.1.1Cocos2d的起源
1.1.2Cocos2dx的誕生
1.1.3Cocos2dLua的發(fā)展
1.2版本簡介
1.2.1Cocos2dx版本簡介(C )
1.2.2Cocos2dLua版本簡介
第2章Lua編程
2.1Lua在Windows下的運行環(huán)境搭建
2.1.1安裝
2.1.2運行
2.2Lua基礎
2.2.1Lua簡介
2.2.2Lua語法
2.3Lua面向對象
2.3.1metatable(元表)
2.3.2重要元方法簡介
2.3.3封裝
2.3.4繼承
2.3.5多態(tài)
第3章CocosLua基礎
3.1Cocos2dLua開發(fā)環(huán)境配置
3.1.1安裝Cocos2dLua
3.1.2安裝VS Code與QuickXDev
3.1.3測試開發(fā)環(huán)境
3.2引擎架構與目錄結構
3.2.1引擎架構
3.2.2引擎文件結構
3.2.3項目文件結構
3.3MVC框架
3.3.1什么是MVC
3.3.2Cocos2dLua中的類實現(xiàn)
3.3.3Cocos2dLua中的MVC實現(xiàn)
3.4基礎概念
3.4.1導演
3.4.2節(jié)點
3.4.3場景
3.4.4層
3.4.5精靈
3.5坐標系
3.5.1笛卡兒坐標系
3.5.2屏幕坐標系和Cocos2dLua坐標系
3.5.3世界坐標系和本地坐標系
3.5.4錨點
3.5.5忽略錨點
3.5.6ZOrder與渲染順序
3.6文本標簽
3.6.1TTF文本標簽
3.6.2BMFont文本標簽
3.6.3圖集文本標簽
3.6.4Mac下使用Glyph Designer制作字體
3.6.5Windows下使用BMFont制作字體
3.7按鈕
3.7.1ccui.Button
3.7.2ccui.CheckBox
3.8場景轉換
3.8.1概念
3.8.2帶轉場的場景
3.8.3場景轉換示例
3.9動作
3.9.1瞬時動作
3.9.2有限時間動作
3.9.3復合動作
3.9.4變速動作
3.9.5節(jié)點與動作相關的接口
3.10序列幀動畫
3.10.1精靈表單
3.10.2播放序列幀動畫
3.10.3動畫緩存
3.11調度器
3.11.1全局調度器
3.11.2節(jié)點調度器
3.12事件分發(fā)機制
3.12.1節(jié)點事件
3.12.2幀事件
3.12.3鍵盤事件
3.12.4加速計事件
3.12.5觸摸事件
3.13多分辨率適配
3.13.1Cocos2dx多分辨率適配
3.13.2Cocos2dLua中的多分辨率適配
第4章消除游戲實戰(zhàn)(1)
4.1Fruit Fest(1): 主場景
4.1.1游戲玩法
4.1.2美術設計
4.1.3分辨率適配策略
4.1.4主場景
4.2Fruit Fest(2): 創(chuàng)建PlayScene
4.2.1準備BMFont
4.2.2創(chuàng)建PlayScene
4.2.3添加轉場代碼
4.2.4添加UI
4.3Fruit Fest(3): 初始化水果矩陣
4.3.1水果類
4.3.2矩陣算法
4.3.3掉落算法
4.3.4矩陣初始化的代碼實現(xiàn)
4.4Fruit Fest(4): 選中水果
4.4.1綁定觸摸事件
4.4.2清除已高亮區(qū)域
4.4.3高亮算法
4.4.4分數(shù)算法
4.5Fruit Fest(5): 消除與掉落
4.5.1消除高亮水果
4.5.2掉落與補全
第5章Cocos2dLua進階
5.1UI控件
5.1.1輸入控件
5.1.2圖片控件
5.1.3進度條控件
5.1.4滑動條控件
5.1.5富文本控件
5.1.6面板容器
5.1.7滾動容器
5.1.8列表容器
5.1.9分頁視圖控件
5.1.10視頻播放控件
5.1.11網頁視圖控件
5.2Cocos Studio編輯器
5.2.1UI編輯基礎
5.2.2分辨率適配
5.2.3加載csb文件
5.3瓦片地圖
5.3.1用Tiled制作瓦片地圖
5.3.2地圖視角
5.3.3在Cocos2dLua中使用TMX
5.4精靈批處理
5.4.1手動批處理
5.4.2自動批處理
5.5碰撞檢測
5.5.1點與點的碰撞
5.5.2點與矩形的碰撞
5.5.3圓與圓之間的碰撞
5.5.4軸對齊矩形之間的碰撞
5.5.5非軸對齊矩形之間的碰撞
5.6內存管理
5.6.1Lua內存管理
5.6.2Cocos2dLua內存管理
5.6.3紋理緩存
5.6.4精靈幀緩存
5.7數(shù)據與存儲
5.7.1JSON數(shù)據
5.7.2crypto數(shù)據編碼
5.7.3UserDefault數(shù)據存儲
5.7.4FileUtils文件讀寫
5.7.5Lua文件讀寫
5.8背景音樂與音效
5.9粒子系統(tǒng)
5.9.1什么是粒子系統(tǒng)
5.9.2Cocos2dLua中的粒子系統(tǒng)
5.9.3粒子系統(tǒng)批處理節(jié)點
5.9.4粒子屬性
5.9.5粒子編輯器
5.9.6使用粒子系統(tǒng)
5.10骨骼動畫
5.10.1Spine
5.10.2DragonBones
5.11裁剪節(jié)點
5.12渲染紋理
第6章消除游戲實戰(zhàn)(2)
6.1Fruit Fest(6): 過關與信息存儲
6.1.1添加進度條
6.1.2過關與數(shù)據持久化
6.2Fruit Fest(7): 爆炸特效與聲音
6.2.1爆炸特效
6.2.2游戲音樂
6.2.3后記
第7章Cocos2dLua高級
7.1網絡通信
7.1.1network
7.1.2SimpleTCP
7.1.3WebSocket
7.2物理引擎
7.2.1創(chuàng)建帶物理世界的場景
7.2.2創(chuàng)建物理邊界
7.2.3創(chuàng)建受重力作用的精靈
7.2.4碰撞檢測
7.2.5完整示例
7.3攝像機
7.3.1OpenGL視口
7.3.2cc.Camera
7.3.3場景的默認攝像機
7.3.4自定義攝像機
7.4自定義事件
7.4.1CustomEvent
7.4.2PushCenter
7.5Lua中使用Protobuf
7.6擴展Lua接口
7.6.1Lua C API
7.6.2Lua棧
7.6.3Lua Binding實戰(zhàn)(1): tolua 手動綁定
7.6.4Lua Binding實戰(zhàn)(2): 擴展Spine接口
7.7OpenGL ES 2.0與shader編程
7.7.1OpenGL ES簡介
7.7.2OpenGL ES繪制幾何圖形
7.7.3矩陣變換
7.7.4紋理貼圖
7.7.5Cocos2dLua中使用自定義shader
第8章打包與發(fā)布
8.1Android項目的編譯與打包
8.1.1Build Native
8.1.2Android Studio打包
8.1.3命令行打包
8.2Mac下編譯iOS版本
8.2.1先決條件
8.2.2Debug真機調試
8.2.3Release打包
8.3Lua源文件的保護
8.3.1LuaJIT bytecode
8.3.2PackageScripts.py腳本
8.3.3修改Lua啟動入口
8.4加密資源文件
8.4.1EncodeRes.py腳本
8.4.2解密設置
8.5SDK接入
8.5.1使用LuaJ接入Android SDK
8.5.2使用Luaoc接入iOS SDK