资源名称:Cocos2d-x 3.X游戏开发入门精解
内容简介:
《Cocos2d-x 3.X游戏开发入门精解》内容由浅入深,从最简单的搭建开发环境开始直到最后完成一个高质量的游戏项目。全书共20 章:第1~3 章主要讲解开发环境的搭建及所需要的C++基础知识;第4~9 章讲解Cocos2d-x 的常见技术,包括基础类、动画、触摸、GUI 控件及多分辨率适配等;第10~12 章讲解Cocos2d-x 中的网络、文件、瓦片地图、物理引擎等知识;第13~15 章讲解Cocos2d-x 中的Lua脚本语言开发、CocosStudio工具及粒子系统的使用方法;第16~19 章讲解数据统计工具的使用方法、项目跨平台移植发布、iOS 真机测试与发布、SVN 版本控制;第20 章讲解一个完整的“黄金矿工”项目,通过这个项目,大家可以将在本书中学到的知识进行综合和自由扩展。
资源目录:
第1 章 Cocos2d-x 简介 1
1.1 游戏引擎 1
1.1.1 什么是游戏引擎 1
1.1.2 常见的游戏引擎 2
1.2 Cocos2d 引擎 3
1.2.1 Cocos2d 引擎家族 . 3
1.2.2 Cocos2d 引擎的主要功能 . 5
1.3 为什么选择Cocos2d-x . 6
1.4 如何学习Cocos2d-x6
1.4.1 学习前的准备工作 6
1.4.2 关于学习Cocos2d-x 的建议 6
1.5 小结 7
第2 章跨平台开发环境搭建8
2.1 搭建iOS 开发环境8
2.1.1 认识Mac 8
2.1.2 搭建开发环境 9
2.2 搭建Windows 开发环境15
2.3 小结17
第3 章数据类型与内存管理 18
3.1 回顾C++ 18
3.1.1 数据类型 18
3.1.2 模板与泛型编程 19
3.1.3 STL 库26
3.2 新增数据类型36
3.2.1 __Integer 36
3.2.2 __Float、__Double、__Bool 37
3.2.3 __String 37
3.2.4 __Array 40
3.2.5 __Dictionary 42
3.2.6 __Set 43
3.2.7 Vector . 44
3.2.8 Map 45
3.3 内存管理 . 46
3.3.1 C++内存管理 47
3.3.2 引用计数内存管理 48
3.4 小结54
第4 章 Cocos2d-x 基础类55
4.1 坐标系简介56
4.1.1 屏幕坐标系 56
4.1.2 OpenGL 坐标系 56
4.1.3 节点坐标系 56
4.1.4 世界坐标系 57
4.1.5 锚点57
4.2 导演类(Director) 57
4.3 节点类(Node) 62
4.4 场景类(Scene) 66
4.4.1 新建场景 67
4.4.2 切换场景 69
4.5 布景层类(Layer) 71
4.5.1 Layer 类的使用方法 . 72
4.5.2 LayerColor . 74
4.6 菜单类(Menu) 75
4.7 Cocos2d-x 中的文字79
4.7.1 LabelTTF 80
4.7.2 LabelAtlas 84
4.7.3 LabelBMFont 86
4.8 游戏中的声音 88
4.8.1 声音简介 89
4.8.2 常见的音乐格式 89
4.8.3 平台对声音的支持 90
4.8.4 背景音乐的操作函数 91
4.8.5 音效的操作函数 92
4.8.6 音乐实例 93
4.9 绘制图形 96
4.10 schedule()函数的使用方法 97
4.11 小结 99
第5 章动作和动画 100
5.1 ActionInterval 101
5.1.1 基本动作 101
5.1.2 Sequence 107
5.1.3 DelayTime 107
5.1.4 TargetedAction . 108
5.1.5 ProgressTo 108
5.1.6 CardinalSplineTo 109
5.1.7 ActionEase . 110
5.1.8 GridBase111
5.2 ActionIntant 112
5.3 Speed . 116
5.4 Follow 116
5.5 ActionManager 117
5.6 与Sprite 相关的高级知识117
5.6.1 Texture2D 117
5.6.2 Sprite 118
5.6.3 TextureCache 118
5.6.4 SpriteBatchNode 119
5.6.5 SpriteFrameCache 121
5.6.6 精灵帧动画 122
5.7 小结 123
第6 章游戏界面设计(GUI) 124
6.1 滑块(ControlSlider) 124
6.2 颜色选择盘(ControlColourPicker) 125
6.3 开关按钮(ControlSwitch) 126
6.4 按钮(ControlButton) 127
6.5 文本框(EditBox) 128
6.6 滚动视图(ScrollView) 129
6.7 表格视图(TableView)132
6.8 小结135
第7 章触摸事件 137
7.1 触摸响应机制137
7.2 触摸的具体实现方法 138
7.3 小结142
第8 章CocosBuilder使用指南 143
8.1 CocosBuilder简介 143
8.2 CocosBuilder的简单使用方法 144
8.3 CocosBuilder项目设置146
8.4 ccb文件夹简介 147
8.5 加载及绑定 147
8.5.1 简单地加载一个场景 147
8.5.2 类的绑定 148
8.5.3 按钮、菜单、方法的绑定 149
8.5.4 成员变量的绑定 150
8.5.5 监听绑定过程 151
8.5.6 运行非自动运行的动画 151
8.6 小结 153
第9 章多分辨率屏幕适配 154
9.1 解决方案及其原理 155
9.1.1 概念及约定 155
9.1.2 常用的函数 155
9.1.3 原理及实现 156
9.2 策略选择 158
9.3 总结 159
9.3.1 适配原理总结 159
9.3.2 设置相对位置 160
9.3.3 在游戏中实现多分辨率适配 160
9.4 小结 161
第10 章网络游戏开发 162
10.1 概述 162
10.2 HTTP 介绍 163
10.2.1 curl 库简介 163
10.2.2 HTTP 在引擎中的使用方法 165
10.3 Socket 网络通信 168
10.3.1 网络基础知识 168
10.3.2 Socket 常用的函数169
10.3.3 TCP 与UDP 编程流程 176
10.3.4 基于TCP 的网络程序编写 178
10.3.5 基于UDP 的网络程序编写 181
10.4 小结183
第11 章瓦片地图184
11.1 Tiled 软件的使用方法 184
11.2 TMXTiledMap类 187
11.3 TMXLayer类 189
11.4 TMXObjectGroup类190
11.5 实例 190
11.5.1 编辑地图 191
11.5.2 代码实现 195
11.6 小结 207
第12 章 Box2D 物理引擎 . 208
12.1 概述208
12.2 基本概念209
12.3 世界209
12.3.1 创建世界 211
12.3.2 使用世界 211
12.4 刚体213
12.4.1 创建一个静态刚体213
12.4.2 创建一个动态刚体 . 214
12.4.3 物体工厂 215
12.5 形状215
12.5.1 形状概述 215
12.5.2 形状定义 215
12.6 接触218
12.6.1 基本概念 218
12.6.2 接触监听器 219
12.6.3 接触筛选 220
12.7 Cocos2d-x 3.X 版本物理引擎的使用220
12.7.1 创建带有物理世界的场景 222
12.7.2 创建边界 222
12.7.3 创建一个精灵 223
12.7.4 物理世界碰撞检测223
12.8 物理引擎使用实例224
12.8.1 定义精灵 225
12.8.2 接触监听 226
12.8.3 主场景实现 227
12.9 小结 . 231
第13 章Lua脚本语言 232
13.1 为什么使用Lua 232
13.2 Lua语法入门 233
13.2.1 类型与数值 233
13.2.2 表达式 235
13.2.3 Lua语句 237
13.2.4 函数 242
13.3 示例项目HelloLua详解 244
13.3.1 Lua与C++的交互 244
13.3.2 Lua脚本引擎的初始化245
13.4 Lua绑定C++类 245
13.4.1 准备工作 246
13.4.2 开始绑定 247
13.5 小结 251
第14 章CocoStudio使用指南 252
14.1 CocoStudio组件介绍 252
14.1.1 UI 编辑器 253
14.1.2 动画编辑器 255
14.1.3 数据编辑器 257
14.1.4 场景编辑器 257
14.2 Cocos2d-x 添加CocoStudio库(Visual Studio)259
14.3 脚本连接CocoStudio 263
14.4 小结268
第15 章粒子系统 269
15.1 粒子系统简介 269
15.2 粒子系统的生命周期 269
15.3 粒子的相关属性270
15.4 发射器的相关属性270
15.5 在代码中使用粒子效果 272
15.6 小结273
第16 章数据统计工具 274
16.1 Flurry 简介 274
16.2 Flurry 的使用过程 275
16.3 统计崩溃日志279
16.4 Flurry 与其他统计工具的对比 279
16.5 小结 279
第17 章将iOS 项目部署到Android 280
17.1 相关概念280
17.2 Mac 下的环境搭建281
17.2.1 准备工作 281
17.2.2 配置环境 282
17.2.3 编译 283
17.3 Windows 下的环境搭建 284
17.3.1 准备工作 284
17.3.2 配置环境 285
17.3.3 编译285
17.4 Android 真机测试和打包 286
17.4.1 导入286
17.4.2 真机测试 289
17.4.3 打包291
17.5 小结295
第18 章苹果真机测试及发布 296
18.1 开发者注册296
18.1.1 创建Apple ID 账号 296
18.1.2 注册成为苹果开发者 297
18.2 真机调试 304
18.3 小结316
第19 章 SVN 版本控制317
19.1 SVN 简介 317
19.2 SVN 服务器的配置 318
19.3 在Mac 下配置SVN 客户端 322
19.4 小结 326
第20 章项目实战:黄金矿工 327
20.1 任务概述327
20.1.1 项目简介 327
20.1.2 开发背景 327
20.1.3 软件定义 328
20.1.4 开发环境 328
20.2 项目概述328
20.2.1 产品描述 328
20.2.2 用户要求 328
20.2.3 输入、输出要求 329
20.2.4 游戏中的道具设定329
20.2.5 系统流程图 329
20.3 需求分析330
20.3.1 功能需求 330
20.3.2 非功能性需求 331
20.3.3 项目界面需求 331
20.4 用例图 335
20.4.1 开始新游戏 335
20.4.2 继续游戏 336
20.4.3 声音设置 336
20.4.4 得分排名 336
20.4.5 暂停游戏 337
20.4.6 赢取金币 337
20.4.7 使用道具 338
20.4.8 退出游戏 338
20.5 详细设计 . 339
20.5.1 项目设计 339
20.5.2 时序图348
20.6 小结354
附录A Cocos2d-x 3.X 常见的宏定义 355
资源截图: