《Cocos2d-x 3.X手游开发实例详解》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:于浩洋著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121239984
  • 页数:340 页
图书介绍:本书介绍了跨平台游戏开发框架cocos2d-x,主要面向手机游戏中级开发者,详细描绘了手游开发相关事宜,cocos2d-x基本数据和类、场境、动作、数据存储、网络通讯、物理引擎box2d、粒子系统、粒子编辑器和动作编辑器等,针对每个小节提供一到多个相关实例,这些实例都是实际游戏开发常用到效果或难点,也是笔者经常被问或收集到的问题,最后提供一个完整的手游开发案例,由浅入深,一步一步进入手游开发行业。

第1章 准备 1

1.1 Cocos2d-x简介 1

1.2 Cocos2d-x架构和目录结构 6

1.3 环境搭建 7

1.3.1 Windows开发环境搭建 7

1.3.2 Mac开发环境搭建 11

1.3.3 创建新项目 12

1.3.4 在Android上调试项目 14

1.3.5 打包APK文件 22

第2章 Cocos2d-x常用数据和方法 23

2.1 C++数据类型 23

2.2 Cocos2d-x封装的数据类型 24

2.2.1 布尔型Bool的使用 24

2.2.2 整型Integer的使用 25

2.2.3 浮点型Double、Float的使用 25

2.2.4 字符串String的使用 25

2.2.5 数组Array的使用 26

2.2.6 点Point的使用 27

2.2.7 尺寸Size的使用 28

2.2.8 矩形Rect的使用 29

2.2.9 字典Dictionary的使用 31

2.3 常用宏定义 32

2.3.1 数学相关宏的使用 32

2.3.2 断言宏CCAsset的使用 33

2.3.3 数组遍历宏CCARRAY FOREACH和CCARRAY_FOREACH_REVER SE的使用 33

2.3.4 字典遍历宏CCDICTFOREACH的使用 35

2.3.5 对象创建方法宏CREATE FUNC的使用 36

2.3.6 属性定义宏CC PROPERTY的使用 37

2.3.7 命名空间宏 39

2.4 Cocos2d-x中的坐标和坐标系 39

2.4.1 OpenGL坐标系和屏幕坐标系 39

2.4.2 锚点和位置的使用 40

2.4.3 节点坐标系和世界坐标系的相互转换 42

第3章 Cocos2d-x核心概念 45

3.1 基础节点 46

3.1.1 Node简介 46

3.1.2 Node应用举例之移除节点 47

3.2 相机 47

3.2.1 相机简介 47

3.2.2 使用CCCamera循环缩放点 48

3.3 导演 49

3.3.1 导演Director简介 49

3.3.2 Director常用功能举例 50

3.4 场景 51

3.4.1 场景定义 51

3.4.2 创建显示战斗场景 52

3.4.3 动态切换多个场景 53

3.5 布景 56

3.5.1 布景定义 56

3.5.2 使用Layer模拟Windows Phone主界面 57

3.6 精灵 59

第4章 Cocos2d-x用户界面 61

4.1 文本渲染 61

4.1.1 制作fnt格式字体 62

4.1.2 使用LabelBMFont显示文本 66

4.1.3 使用LabelTTF显示文本 67

4.1.4 使用LabelAtlas显示文本 70

4.2 菜单 71

4.2.1 菜单和菜单项的简单使用 72

4.2.2 使用菜单制作游戏菜单功能 74

4.3 滚动框 80

4.3.1 使用ScrollView显示多页内容 80

4.3.2 监听ScrollView的滚动和缩放事件 82

4.3.3 使用TableView展示多页内容 83

4.3.4 触摸TableView里的菜单来滚动TableView 86

4.4 扩展控件 87

4.4.1 滑动条控件ControlSlider 87

4.4.2 开关控件ControlSwitch 90

4.4.3 取色器控件ControlColourPicker 92

4.4.4 电位计控件ControlPotentiometer 94

4.4.5 步进器控件ControlStepper 95

4.4.6 按钮控件ControlButton 96

4.4.7 Scale9Sprite 99

4.5 使用编辑框制作用户登录界面 100

第5章 Cocos2d-x动作 105

5.1 动作分类 105

5.2 瞬时动作 106

5.2.1 使用FlipX/FlipY实现X/Y翻转 106

5.2.2 使用Hide、Show实现隐藏和显示 108

5.3 延时动作 109

5.3.1 使用MoveTo或者MoveBy实现移动 109

5.3.2 使用RotateTo和RotateBy实现旋转 110

5.3.3 使用JumpTo和JumpBy实现跳跃 113

5.3.4 使用ScaleTo和ScaleBy实现缩放 114

5.3.5 使用SkewTo和SkewBy实现倾斜变形 115

5.3.6 使用CardinalSplineBy和CardinalSplineTo实现曲线运动 117

5.3.7 使用FadeIn和FadeOut实现渐隐渐出 119

5.4 联合动作 120

5.4.1 按先后顺序执行动作 120

5.4.2 同时执行动作 121

5.4.3 逆向执行动作 122

5.4.4 多次重复执行动作 123

5.4.5 延时执行动作 124

第6章 音频处理 125

6.1 音频处理类SimpleAudioEngine 125

6.2 添加控制背景音乐 126

6.2.1 播放背景音乐并调整音量 126

6.2.2 停止播放背景音乐 128

6.2.3 暂停播放背景音乐 128

6.2.4 继续播放背景音乐 128

6.3 添加控制音乐效果 129

6.3.1 播放音乐 129

6.3.2 停止播放音乐 131

6.3.3 暂停播放音乐 131

6.3.4 继续播放音乐 131

6.3.5 停止、暂停、继续播放所有音乐 132

6.4 Cocos2d-x支持的音频格式 133

第7章 Cocos2d-x瓷砖地图 135

7.1 什么是瓷砖地图 135

7.2 使用Tiled制作瓷砖地图 137

7.2.1 安装Tiled 137

7.2.2 制作地图 138

7.3 在游戏中使用瓷砖地图 140

7.3.1 使用TMXTiledMap把瓷砖地图加载到游戏中 140

7.3.2 拖曳TMX地图 141

7.3.3 在TMX地图中添加并移动精灵 142

7.3.4 读写TMX地图中的图层和瓷砖 143

第8章 Cocos2d-x中的事件机制 146

8.1 事件和事件调度 147

8.2 触摸事件 149

8.2.1 单点触摸事件的类和方法 149

8.2.2 单击屏幕移动精灵 150

8.2.3 拖动精灵移动 152

8.2.4 修改监听器的优先级 154

8.2.5 多点触摸事件 156

8.2.6 使用多点触摸实现缩放 157

8.3 鼠标事件 159

8.4 键盘事件 159

8.4.1 键盘事件介绍 159

8.4.2 实例:把键盘输入内容显示在屏幕中 160

8.5 加速计 161

8.5.1 加速计介绍 161

8.5.2 实例:利用加速计控制小球移动 162

第9章 Cocos2d-x本地数据存储 165

9.1 使用UserDefault存储数据 165

9.1.1 UserDefault介绍 165

9.1.2 使用UserDefault存储修改数据 167

9.2 文件 169

9.2.1 文件处理类FileUtils 169

9.2.2 判断文件是否存在 169

9.2.3 设置文件别名 170

9.2.4 获取文件完整路径 172

9.2.5 设置文件搜索路径 174

9.2.6 根据分辨率调用不同的资源 175

9.2.7 向文件中写入数据 176

9.2.8 从文件中读取数据 179

9.2.9 把数据写入plist文件 180

9.2.10 从plist文件读取数据 182

9.3 SQLite存储 183

9.3.1 SQLite简介 183

9.3.2 可视化管理工具SQLiteStudio 185

9.3.3 使用SQLiteStudio添加数据库 186

9.3.4 使用SQLiteStudio添加表和数据 188

9.3.5 使用C语言接口操作SQLite数据库 190

9.3.6 不使用回调查询SQLite数据库 194

第10章 网络编程 197

10.1 HTTP实现网络通信 198

10.1.1 HTTP通信简介及常用类 198

10.1.2 GET方式通信 200

10.1.3 POST方式通信 203

10.2 Socket实现网络通信 204

10.2.1 Socket简介 204

10.2.2 在Cocos2d-x中使用Socket 205

10.3 WebSocket实现网络通信 209

10.3.1 WebSocket简介 209

10.3.2 在Cocos2d-x中使用WebSocket 210

第11章 物理引擎Box2D 215

11.1 Box2D简介 216

11.2 创建Box2D的HelloWorld项目 217

11.2.1 创建一个世界 217

11.2.2 创建一个地面物体 217

11.2.3 创建一个动态物体 219

11.2.4 模拟(Box2D的)世界 219

11.2.5 清理工作 221

11.3 世界b2World 221

11.3.1 b2World简介 221

11.3.2 世界常用功能 222

11.4 物体b2Body 225

11.4.1 b2Body简介 225

11.4.2 物体定义 226

11.4.3 创建物体 228

11.4.4 使用物体 229

11.5 固定装置b2FixtureDef 231

11.5.1 b2FixtureDef简介 231

11.5.2 创建b2FixtureDef 231

11.6 关节 234

11.6.1 关节简介 234

11.6.2 关节定义 235

11.6.3 创建关节 235

11.6.4 关节类型和使用关节 236

11.7 接触 242

11.7.1 接触简介 242

11.7.2 接触监听器 243

11.7.3 接触筛选 244

第12章 纹理和动画 246

12.1 渲染和修改纹理 246

12.1.1 纹理类Texture2D 247

12.1.2 Cocos2d-x支持的纹理格式 249

12.1.3 Cocos2d-x支持的最大纹理尺寸 249

12.1.4 使用RenderTexture保存截屏 250

12.1.5 图片抗锯齿处理方式 251

12.1.6 使用图片缓存 253

12.1.7 制作游戏加载场景 254

12.1.8 使用TexturePacker制作Sprite Sheet 256

12.2 动画 258

12.2.1 帧动画 258

12.2.2 使用帧动画实现英雄打斗 259

12.2.3 Sprite Sheet动画 266

12.2.4 骨骼动画 268

12.2.5 使用CocoStudio制作骨骼动画 269

12.2.6 在项目中调用CocoStudio制作的骨骼动画 273

第13章 使用Cocos2d-x制作2048休闲游戏 275

13.1 准备工作 275

13.2 使用CocoStudio制作UI界面 276

13.3 编写逻辑代码 279

13.3.1 把UI界面添加到游戏界面中 279

13.3.2 添加获取分数控件并设置分数 281

13.3.3 添加数字方块类 281

13.3.4 初始化游戏数据 282

13.3.5 添加按钮功能 284

13.3.6 添加事件监听 285

13.3.7 实现方块上下左右移动 287

13.3.8 添加新的数字块 290

13.3.9 判断游戏是否结束 291

13.3.10 添加游戏介绍界面 293

第14章 使用Cocos2d-x制作水浒卡牌游戏 294

14.1 准备工作 294

14.2 定义游戏数据结构和存储单例 295

14.3 添加登录界面 299

14.4 添加游戏主场景 305

14.5 添加游戏首页 307

14.6 添加英雄卡牌列表界面 311

14.7 添加战斗流程 314

14.8 添加战斗界面 319

14.9 终结 323

附录A 实例代码清单说明 324

附录B Cocos2d-x 3.X主要版本间的区别 328