第一部分 初识Cocos2d-x引擎 2
第1章 Cocos2d-x引擎简介 2
1.1 x引擎档案资料 2
1.2 Cocos2d-x对应的平台 3
1.3 Cocos2d-x擅长的游戏类型 5
第2章 Cocos2d-x开发环境 7
2.1 Cocos2d-x Windows平台开发环境搭建 7
2.2 Cocos2d-x iOS平台开发环境搭建 9
2.3 Cocos2d-x Android平台开发环境搭建 10
2.4跨平台移植介绍 12
第3章 用Cocos2d-x实现Helloworld 14
3.1 Cocos2d-x的Helloworld项目 14
3.2 Cocos2d-x自带例子简介 16
第二部分 掌握Cocos2d-x引擎的使用基础 20
第4章 游戏编程基础及Cocos2d-x引擎架构 20
4.1游戏编程基础 20
4.2 Cocos2d-x引擎架构 22
4.3从零开始实现游戏框架 24
4.3.1 x引擎游戏框架介绍 24
4.3.2实现Windows版游戏框架 25
第5章 Cocos2d-x引擎的核心类及场景图 28
5.1 Cocos2d-x引擎的导演类——CCDirector 28
5.2 Cocos2d-x引擎的场景图 34
5.3实现游戏的场景转换 36
5.4实现场景转换特效 38
第6章 Cocos2d-x的精灵类 43
6.1 2D游戏中的主角——精灵 43
6.2 x引擎中的精灵类——CCSprite 44
6.3 x引擎中的精灵动画 47
6.4精灵的锚点 50
6.5精灵的移动、旋转和缩放 51
6.6精灵颜色及透明度控制 53
6.7由精灵组成的游戏对象 55
6.8批量渲染技术 56
第7章 游戏UI与多语言支持 59
7.1 Label控件介绍及使用 59
7.2 Cocos2d-x引擎的多语言支持 63
7.3按钮控件的介绍及使用 67
7.4悬挂按钮控件的介绍及使用 69
7.5 TableView控件的介绍及使用 71
7.6 Touch事件处理机制 74
第8章 Cocos2d-x的动作类族 78
8.1动作类介绍 78
8.2动作类使用实例 80
8.2.1移动类动作 80
8.2.2缩放、旋转类动作 82
8.2.3淡入淡出及变色类动作 84
8.2.4同步动作 87
8.2.5顺序动作 88
8.2.6重复动作 89
8.2.7速度控制动作 90
8.2.8样条曲线动作 90
8.2.9贝塞尔曲线移动 92
第9章 Cocos2d-x的内存管理与数据保存 96
9.1 Cocos2d-x的内存管理机制 96
9.2 x引擎对象的自动管理 98
9.3 x引擎的数据保存 100
第10章 音乐与音效 104
10.1 Cocos2d-x声音播放引擎简介 104
10.2音频文件预加载 106
10.3背景音乐的播放控制 107
10.4游戏音效的播放控制 108
10.5音乐与音效工具介绍 110
第11章 粒子特效 113
11.1 Cocos2d-x粒子特效原理 113
11.2粒子编辑器使用介绍 115
11.2.1粒子属性简介 118
11.2.2发射器属性简介 119
11.3 x引擎内置粒子特效实例 120
11.3.1火焰效果 121
11.3.2爆炸效果 122
11.3.3烟雾效果 123
第12章 Cocos2d-x中的物理引擎 125
12.1 Box2D物理引擎简介 125
12.1.1物理引擎的基本概念 125
12.1.2 Box2D简介 126
12.2在游戏中引入Box2D物理世界 129
12.3定义物体对象,实现重力效果 130
12.4实现物体的碰撞检测 132
12.5使用关节来连接刚体 135
12.6 Box2D引擎的一些注意事项 140
12.6.1 Box2D调试渲染 140
12.6.2 Box2D速度与性能注意事项 141
12.6.3复杂多边形的代码生成工具 142
第13章 Cocos2d-x引擎中的网格地图 145
13.1 2D游戏网格地图介绍 145
13.2使用网格地图编辑器 147
13.3在Cocos2d-x引擎中使用网格地图 151
13.3.1显示网格地图 151
13.3.2网格地图的层次控制 154
13.3.3网格地图的移动控制 156
13.3.4网格地图的遮挡操作 157
第三部分 用Cocos2d-x引擎制作商业级游戏 162
第14章 Last Stand游戏概念及策划案 162
14.1 Last Stand游戏概念 162
14.1.1 Last Stand的创意玩法 163
14.1.2 Last Stand的游戏类型 164
14.1.3 Last Stand的用户群定位 164
14.1.4 Last Stand的名称确定 166
14.1.5 Last Stand的游戏平台概要 167
14.2 Last Stand游戏策划案 167
14.2.1 Last Stand游戏过程描述 168
14.2.2 Last Stand游戏界面原型 171
第15章 Last Stand游戏框架设计与实现 182
15.1 Last Stand游戏设计 182
15.1.1 LogoScene的设计 184
15.1.2 MenuScene的设计 185
15.1.3 LevelChooseScene的设计 186
15.1.4 GameScene的设计 187
15.1.5 ArsenalScene的设计 196
15.1.6 LevelupScene的设计 198
15.2 Last Stand游戏资源介绍 200
15.2.1游戏过程中用到的UI资源 201
15.2.2武器3D展示图资源 201
15.2.3动作动画资源 202
第16章 Last Stand游戏框架实现 204
16.1游戏入口的实现 204
16.2 LogoScene功能代码实现 205
16.3 MenuScene功能代码实现 210
16.4 LevelChooseScene功能代码实现 213
16.5 ArsenalScene功能代码实现 217
16.6 LevelupScene功能代码实现 221
第17章 游戏主体过程的实现 226
17.1游戏场景GameScene的实现 226
17.2实现游戏世界 231
17.2.1游戏世界的初始化 232
17.2.2游戏世界的逻辑更新 234
17.2.3游戏世界的清理回收 237
17.3实现游戏主角 238
17.4实现基本的武器对象 241
17.5实现基本的敌兵 246
第18章 游戏主体过程的扩展内容 250
18.1武器类族的扩展实现 250
18.1.1 HandgunGlock的实现 250
18.1.2 ShotgunM3的实现 250
18.1.3机关枪类武器的实现 252
18.1.4狙击枪SniperM 107的实现 253
18.1.5手炮类武器的实现 255
18.2敌兵类族的扩展实现 256
18.2.1 Sapper类的实现 256
18.2.2 Dog类的实现 257
18.2.3 Hummer类的实现 258
18.2.4 Shielder类的实现 259
18.2.5 Birdman类的实现 261
18.2.6 Wolftank类的实现 262
18.2.7 Helicopter类的实现 263
18.2.8 Trooper类的实现 264
18.2.9 Expdog类的实现 265
18.2.10 Tigertank类的实现 266
18.3实现游戏的所有关卡 267
第19章 移植Android和iOS平台 269
19.1将Last Stand移植到Android平台 269
19.1.1构建Eclipse工程 269
19.1.2 Android版游戏入口介绍 272
19.1.3编译及调试 272
19.2将Last Stand移植到iOS平台 277
19.2.1构建工程 277
19.2.2 Objective-C入口 279
19.2.3模拟器调试 283
19.2.4真机调试 284
第20章 加入广告条实现盈利及市场发布 286
20.1单机游戏常见盈利方式简介 286
20.2在Android平台上加入Admob广告条 287
20.3将Last Stand发布到Google Play市场 290
20.4在iOS平台上加入iAd广告条 293
20.5将Last Stand发布到App Store市场 297
第21章 全新的Cocos2d-x 3.0版 301
21.1 Cocos2d-x 3.0版的新功能 301
21.2新版语法的变化 303
21.3 Cocostudio工具集介绍 304
21.3.1 UI编辑器的使用 304
21.3.2动画编辑器的使用 307
21.3.3场景编辑器的使用 309
21.4 Cocos2d-x 3.0的新UI组件 310
21.5 Cocos2d-x 3.X版本新建工程步骤 312
21.6 Cocos2d-x 3.X版本新功能展望 314