| 作 者: | 满硕泉 |
| 出版社: | 机械工业出版社 |
| 丛编项: | |
| 版权说明: | 本书为出版图书,暂不支持在线阅读,请支持正版图书 |
| 标 签: | 编程语言与程序设计 计算机与互联网 |
| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
前 言
第一部分 准备篇
第1章 认识Cocos2D-x / 2
1.1 什么是Cocos2D / 2
1.1.1 Cocos2D的特点 / 2
1.1.2 Cocos2D的主要功能 / 3
1.1.3 Cocos2D的应用 / 5
1.2 什么是Cocos2D-x / 6
1.2.1 Cocos2D-x的特点 / 6
1.2.2 Cocos2D-x的主要功能 / 6
1.2.3 Cocos2D-x的应用 / 7
1.3 Cocos2D-x与Cocos2D-iPhone的比较 / 8
1.4 本章小结 / 10
第2章 搭建跨平台的开发环境 / 11
2.1 Windows下的开发环境配置 / 11
2.1.1 Cocos2D-x软件安装与配置 / 11
2.1.2 Cocos2D-x工程目录介绍 / 13
2.1.3 新建项目及交叉编译 / 14
2.2 Android下的开发环境配置 / 16
2.2.1 Cocos2D-x软件安装与配置 / 17
2.2.2 Cocos2D-x工程目录介绍 / 23
2.2.3 新建项目及交叉编译 / 23
2.3 iOS下的开发环境配置 / 27
2.3.1 Cocos2D-x软件安装与配置 / 27
2.3.2 Cocos2D-x工程目录介绍 / 28
2.3.3 新建项目及交叉编译 / 29
2.4 使用Doxygen工具生成Cocos2D-x文档 / 31
2.5 本章小结 / 33
第二部分 基础篇
第3章 Cocos2D-x中的核心类 / 36
3.1 节点类 / 36
3.1.1 CCNode类的成员数据 / 37
3.1.2 CCNode类的函数 / 38
3.1.3 坐标系简介 / 41
3.1.4 实例:通过节点控制屏幕中的全体渲染对象 / 43
3.2 导演类 / 46
3.2.1 CCDirector类的成员数据 / 46
3.2.2 CCDirector类的函数 / 47
3.2.3 实例:CCDirector类的使用 / 48
3.3 场景类 / 50
3.3.1 如何新建一个场景 / 50
3.3.2 场景的切换 / 52
3.3.3 场景间切换的动画 / 54
3.4 布景层类 / 56
3.4.1 CCLayer类的函数 / 58
3.4.2 颜色布景层类CCLayerColor / 59
3.4.3 多层布景层类CCLayerMultiplex / 61
3.4.4 菜单类CCMenu / 63
3.4.5 控件类及其子类 / 65
3.5 精灵类 / 69
3.5.1 CCSprite类的成员数据及函数 / 70
3.5.2 贴图类CCTexture2D / 71
3.5.3 精灵批处理类CCSpriteBatchNode / 72
3.5.4 精灵帧类CCSpriteFrame / 73
3.5.5 精灵帧缓存类CCSpriteFrameCache / 73
3.5.6 实例:精灵类及其相关类的使用 / 74
3.6 摄像机类 / 79
3.6.1 CCCamera类的成员数据 / 80
3.6.2 CCCamera类的函数 / 80
3.6.3 实例:CCCamera类的使用 / 80
3.7 容器类 / 81
3.7.1 CCMutableArray和CCArray / 81
3.7.2 CCMutableDictionary和CCDictionary / 83
3.8 拖动渐隐效果类CCMotionStreak / 84
3.9 绘制图形 / 86
3.10 时间调度 / 88
3.11 本章小结 / 89
第4章 Cocos2D-x中的动作、特效与动画 / 90
4.1 动作类 / 90
4.1.1 CCAction类的主要成员数据和函数 / 90
4.1.2 基本动作 / 91
4.1.3 摄像机动作 / 102
4.1.4 基本样条动作 / 104
4.1.5 缓冲动作 / 108
4.1.6 组合动作 / 111
4.1.7 跟随动作 / 113
4.1.8 可调整速度动作 / 114
4.1.9 动作延时 / 116
4.1.10 改变动作执行对象 / 116
4.1.11 函数回调动作 / 117
4.1.12 过程动作 / 119
4.2 动作管理类 / 121
4.2.1 CCActionManager类的主要函数 / 122
4.2.2 CCActionManager类的使用 / 122
4.3 网格动作 / 123
4.3.1 Cocos2D-x中的网格 / 123
4.3.2 网格动作 / 124
4.3.3 清除网格 / 126
4.4 动画 / 126
4.4.1 Cocos2D-x中与动画相关的类 / 126
4.4.2 实例:Cocos2D-x中的动画 / 127
4.4.3 使用plist配置文件实现动画 / 130
4.5 本章小结 / 133
第5章 Cocos2D-x中的菜单项和文本渲染系统 / 134
5.1 菜单项 / 134
5.1.1 标签菜单项 / 134
5.1.2 精灵菜单项 / 135
5.1.3 触发器菜单项 / 135
5.1.4 实例:菜单项的使用 / 136
5.2 文本渲染类 / 138
5.2.1 CCLableAtlas类 / 139
5.2.2 CCLabelTTF类 / 140
5.2.3 CCLabelBMFont类 / 143
5.2.4 生成FNT配置文件的工具 / 144
5.3 本章小结 / 145
第6章 Cocos2D-x中的事件处理机制 / 146
6.1 触屏事件 / 146
6.1.1 触点类CCTouch / 146
6.1.2 单/多点触摸函数 / 147
6.1.3 加入触摸事件 / 148
6.1.4 单点触摸实例:主角随手指移动 / 151
6.1.5 多点触摸实例:缩放功能的实现 / 154
6.2 加速度传感器事件 / 156
6.2.1 CCAccelerometerDelegate类的函数 / 156
6.2.2 实例:加速度传感器事件的使用 / 157
6.3 按键事件 / 159
6.3.1 CCKeypadDelegate类的函数 / 159
6.3.2 实例:按键事件的使用 / 159
6.4 获得用户虚拟键盘输入 / 161
6.4.1 CCIMEDelegate类的函数 / 161
6.4.2 CCTextFieldTTF类的函数 / 161
6.4.3 实例:获得用户输入 / 162
6.5 滚动列表类 / 163
6.5.1 CCListView类及其相关类的函数 / 163
6.5.2 实例:滚动列表类的使用 / 164
6.6 本章小结 / 167
第7章 Cocos2D-x中的瓦片地图集 / 168
7.1 瓦片地图集及编辑器 / 168
7.1.1 瓦片地图的种类及用途 / 168
7.1.2 Tiled地图编辑器 / 169
7.1.3 用Tiled地图编辑器编辑地图 / 170
7.1.4 添加精灵层 / 173
7.1.5 Tiled地图编辑器数据文件 / 173
7.1.6 瓦片地图集类CCTMXTiledMap / 174
7.1.7 地图层类CCTMXLayer / 175
7.1.8 地图精灵组类CCTMXObjectGroup / 176
7.2 如何在Cocos2D-x中使用地图 / 176
7.2.1 新建地图类并在地图中显示 / 177
7.2.2 普通视角地图获得对应位置图素 / 178
7.2.3 45度角地图获得对应位置图素 / 179
7.2.4 GID值实例:种树 / 180
7.2.5 地图属性数据的使用 / 182
7.2.6 在地图中加入精灵 / 182
7.2.7 精灵层的使用 / 186
7.3 贴图地图类CCTileMapAtlas / 188
7.4 本章小结 / 189
第8章 Cocos2D-x中的声音、存储和网络 / 190
8.1 声音 / 190
8.1.1 Cocos2D-x在不同平台下支持的声音 / 190
8.1.2 SimpleAudioEngine类的常用函数 / 191
8.1.3 实例:SimpleAudioEngine类的使用 / 191
8.2 游戏存档 / 194
8.2.1 CCUserDefault类的常用函数 / 195
8.2.2 实例:CCUserDefault类的使用 / 195
8.3 网络连接 / 197
8.3.1 cURL基础知识 / 198
8.3.2 libcurl基础知识 / 198
8.3.3 实例:cURL的使用 / 200
8.4 本章小结 / 200
第9章 可视化场景编辑器 / 202
9.1 CocosBuilder简介 / 202
9.2 CocosBuilder编辑器的使用 / 202
9.2.1 CocosBuilder菜单操作 / 202
9.2.2 对象属性编辑 / 206
9.3 CocosBuilder的使用 / 210
9.3.1 CocosBuilder在Cocos2D-x中使用的相关类 / 210
9.3.2 实例:CocosBuilder在Cocos2D-x中的使用 / 212
9.4 本章小结 / 218
第10章 Cocos2D-x中的物理引擎 / 219
10.1 物理引擎 / 219
10.1.1 什么是物理引擎 / 219
10.1.2 物理引擎的作用 / 219
10.1.3 Box2D和Chipmunk的对比 / 220
10.2 Box2D物理引擎 / 220
10.2.1 Box2D引擎中的重要概念 / 221
10.2.2 Box2D的使用步骤 / 221
10.2.3 在Cocos2D-x中使用Box2D / 221
10.3 在Cocos2D-x中使用Chipmunk / 229
10.4 本章小结 / 233
第三部分 实战篇
第11章 纵版射击游戏:喵星战争 / 236
11.1 纵版射击游戏的特点 / 236
11.2 喵星战争简介 / 237
11.2.1 喵星战争的游戏规则 / 237
11.2.2 喵星战争的游戏框架和界面 / 237
11.3 喵星战争主游戏模块组成元素的实现 / 239
11.3.1 主角小猫的实现 / 239
11.3.2 敌人狗博士的实现 / 244
11.3.3 鱼骨子弹的实现 / 247
11.3.4 试管子弹的实现 / 248
11.3.5 游戏分数的实现 / 248
11.4 游戏主模块的实现 / 251
11.5 游戏主菜单的实现 / 256
11.6 关于界面的实现 / 259
11.7 本章小结 / 260
第12章 横版动作游戏:萝莉快跑 / 261
12.1 横版动作游戏的特点 / 261
12.2 萝莉快跑简介 / 262
12.2.1 萝莉快跑的游戏规则 / 262
12.2.2 萝莉快跑的游戏框架和界面 / 262
12.3 萝莉快跑主游戏模块组成元素的实现 / 264
12.3.1 主角萝莉的实现 / 264
12.3.2 星星的实现 / 268
12.3.3 地图的实现 / 269
12.4 游戏主模块的实现 / 273
12.5 游戏主菜单的实现 / 277
12.6 关于界面的实现 / 279
12.7 本章小结 / 280
第四部分 高级篇
第13章 粒子系统 / 282
13.1 什么是粒子系统 / 282
13.1.1 粒子系统的特点 / 283
13.1.2 粒子系统的构成 / 283
13.2 Cocos2D-x中的粒子系统 / 283
13.2.1 粒子系统基类CCParticleSystem / 285
13.2.2 放射式粒子系统CCParticleSystemQuad / 285
13.3 在Cocos2D-x中使用粒子系统 / 287
13.3.1 新建一个粒子系统CCParticleSystemQuad类 / 287
13.3.2 直接使用CCParticleSystemQuad类的子类创建粒子系统 / 289
13.3.3 使用粒子编辑器创建粒子系统 / 290
13.3.4 “清理”粒子系统 / 291
13.4 支持Cocos2D-x的粒子编辑器 / 291
13.4.1 Windows粒子编辑器Cocos2d Particle Editor / 292
13.4.2 粒子编辑器Particle Designer / 296
13.5 本章小结 / 303
第14章 游戏中常用算法在Cocos2D-x中的实现 / 304
14.1 A星算法 / 304
14.1.1 启发式搜索算法原理 / 304
14.1.2 什么是A星搜索 / 305
14.1.3 A星算法在Cocos2D-x中的实现 / 306
14.2 碰撞检测 / 318
14.2.1 碰撞检测的基本思想 / 319
14.2.2 碰撞检测在Cocos2D-x中的实现 / 320
14.3 本章小结 / 326
第15章 内存管理与性能优化 / 327
15.1 Cocos2D-x中的内存管理 / 327
15.1.1 Cocos2D-x内存管理的原则 / 327
15.1.2 Cocos2D-x中的图片处理 / 328
15.2 Cocos2D-x对图片渲染的控制 / 330
15.2.1 CCRenderTexture的使用 / 330
15.2.2 Cocos2D-x中绘制方法的对比 / 332
15.3 Cocos2D-x中处理图片的方法 / 333
15.3.1 高清图片的处理 / 333
15.3.2 抗锯齿处理 / 334
15.3.3 Mipmap处理 / 335
15.3.4 获得贴图数和大小 / 337
15.4 多语言混编Cocos2D-x / 337
15.4.1 Cocos2D-x中调用Objective-C / 337
15.4.2 Cocos2D-x中调用Java / 338
15.5 Cocos2D-x的调试 / 339
15.5.1 Visual Studio中的调试方法 / 339
15.5.2 Eclipse中的调试方法 / 339
15.5.3 Xcode中的调试方法 / 342
15.6 Android中画面的缩放问题 / 346
15.6.1 等比例缩放 / 346
15.6.2 非等比例缩放 / 346
15.7 本章小结 / 348
第16章 Cocos2D的分支Cocos2D-HTML5 / 349
16.1 认识HTML5 / 349
16.2 如何使用Cocos2D-HTML5 / 350
16.2.1 搭建Cocos2D-HTML5的开发环境 / 351
16.2.2 Cocos2D-HTML5 2.0版本的新特性 / 355
16.2.3 Cocos2D-HTML5的HelloWorld项目介绍 / 355
16.3 Cocos2D-x的未来 / 363
16.4 本章小结 / 363
附录 Cocos2D-x中常见的宏 / 365