《Cocos2d x高级开发教程 制作自己的《捕鱼达人》》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:火烈鸟网络科技编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115317964
  • 页数:305 页
图书介绍:本书以《捕鱼达人》游戏为案例,全面系统地讲解了Cocos2d—x的功能与特性,以及进行游戏开发的基本思路,包括游戏框架的搭建、基本游戏元素的使用、动作、音乐与音效、物理引擎、高级开发技巧、游戏优化策略以及网络编程等内容。此外,本书精心挑选了引擎的调度系统、动作系统、输入事件处理与底层绘图原理等内容,逐层剖析,给读者清晰地呈现出了引擎的架构和内部的实现机理。

第一部分 引擎基础 2

第1章 Hello Cocos2d-x 2

1.1引擎简介 2

1.2搭建开发环境 3

1.3 Hello World 5

1.4 Hello World分析 6

1.5测试样例简介 10

1.6小结 11

第2章 在游戏开始之前 12

2.1基本概念 12

2.1.1场景与流程控制 12

2.1.2层 13

2.1.3精灵 14

2.1.4节点与渲染树 14

2.1.5动作与动画 16

2.2 Cocos2d-x代码风格 16

2.2.1命名空间与类名称 16

2.2.2构造函数与初始化 17

2.2.3选择器 18

2.2.4属性 19

2.2.5单例 20

2.3 C++中的Cocos2d-x内存管理 21

2.3.1复杂的内存管理 21

2.3.2现有的智能内存管理技术 21

2.3.3 Cocos2d-x的内存管理机制 22

2.3.4工厂方法 25

2.3.5关于对象传值 26

2.3.6释放:release()还是autorelease()? 26

2.3.7容器 27

2.3.8相关辅助宏 28

2.3.9 Cocos2d-x内存管理原则 28

2.4生命周期分析 29

2.5小结 31

第3章 游戏的基本元素 32

3.1 CCDirector:大总管 32

3.2 CCScene:场景 33

3.3 CCLayer:层 34

3.4 CCSprite:精灵 35

3.4.1纹理 35

3.4.2创建精灵 35

3.4.3设置精灵的属性 36

3.4.4向层中添加精灵 36

3.4.5常用成员 38

3.5 CCNode与坐标系 39

3.5.1坐标系与绘图属性 40

3.5.2节点的组织 43

3.5.3定时器事件 44

3.5.4其他事件 46

3.6 Cocos2d-x内置的常用层 46

3.7 Cocos2d-x调度原理 49

3.7.1游戏主循环 50

3.7.2定时调度器 53

3.8小结 58

第4章 动作 60

4.1基本概念 60

4.2瞬时动作 61

4.3持续性动作 62

4.3.1位置变化动作 63

4.3.2属性变化动作 64

4.3.3视觉特效动作 65

4.3.4控制动作 65

4.4复合动作 66

4.5变速动作 68

4.6使鱼动起来 70

4.7创建自定义动作 74

4.7.1一点简单的物理知识 74

4.7.2创建自定义动作 75

4.8让动作更平滑流畅 77

4.9 Cocos2d-x动作原理 79

4.9.1动作类的结构 79

4.9.2动作的更新 80

4.9.3 CCActionManager的工作原理 81

4.10小结 83

第5章 动画与场景特效 84

5.1动画 84

5.1.1概述 84

5.1.2使用动画 85

5.2场景特效 86

5.3小结 87

第6章 音乐与音效 88

6.1使用音效引擎 88

6.2支持格式 89

6.3播放音乐与音效 89

6.3.1预加载 89

6.3.2播放与停止 90

6.3.3暂停与恢复播放 90

6.3.4其他成员 91

6.4小结 92

第7章 用户输入 93

7.1触摸输入 93

7.1.1使用CCLayer响应触摸事件 93

7.1.2两种Cocos2d-x触摸事件 94

7.2触摸分发器原理 97

7.3触摸中的陷阱 100

7.4使用触摸事件 100

7.4.1使炮台动起来 100

7.4.2识别简单的手势 103

7.5加速度计 105

7.6文字输入 107

7.7小结 110

第二部分 引擎进阶 114

第8章 粒子效果 114

8.1 Cocos2d-x中的粒子系统 114

8.2粒子效果编辑器 117

8.2.1界面介绍 117

8.2.2制作火焰特效 121

8.3小结 124

第9章 大型地图 125

9.1瓦片地图 125

9.2编辑器 126

9.2.1 Tiled Map Editor简介 126

9.2.2创建水底世界 127

9.3导入游戏 131

9.4实现层次感 132

9.5预定义属性 135

9.6小结 135

第10章 Cocos2d-x绘图原理及优化 136

10.1 OpenGL基础 136

10.1.1 OpenGL简介 136

10.1.2绘图 140

10.1.3矩阵与变换 143

10.2 Cocos2d-x绘图原理 145

10.2.1精灵的绘制 145

10.2.2渲染树的绘制 147

10.2.3坐标变换 150

10.3 TexturePacker与优化 152

10.3.1绘图瓶颈 152

10.3.2碎图压缩与精灵框帧 153

10.3.3批量渲染 154

10.3.4色彩深度优化 156

10.4小结 157

第11章 OpenGL绘图技巧 159

11.1自定义绘图 159

11.2遮罩层 161

11.3数据交流 164

11.4可编程管线 168

11.4.1可编程着色器 168

11.4.2 CCGLProgram 168

11.4.3变量传递 169

11.5水纹效果 170

11.5.1着色器程序 171

11.5.2 ShaderNode类 172

11.5.3 uniform变量准备 174

11.5.4绘制 175

11.5.5添加到场景 176

11.6 CCGrid3D 177

11.7再议效率 178

11.8小结 179

第12章 物理引擎 180

12.1新的超级武器 180

12.2 Box2D引擎简介 181

12.3接入Box2D 181

12.4更新状态 184

12.5调试绘图 186

12.6碰撞检测 187

12.7弹射 189

12.8精确碰撞 190

12.9小结 191

第三部分 游戏开发进阶 194

第13章 数据持久化 194

13.1 CCUserDefault 194

13.2格式化存储 194

13.3本地文件存储 196

13.4 XML与JSON 196

13.5加密与解密 200

13.6 SQLite 201

13.7小结 205

第14章 网络 206

14.1网络传输架构 206

14.2 CURL 206

14.3简单传输 207

14.4非阻塞传输 209

14.5用户记录 211

14.6多人对战与同步问题 211

14.6.1时间同步 212

14.6.2鱼群同步 212

14.7校验 213

14.8小结 213

第15章 缓存与池 215

15.1移动设备昂贵的CPU与内存 215

15.2缓存机制:预加载与重复使用 216

15.3 Cocos2d-x中的缓存 216

15.3.1 CCTextureCache 216

15.3.2 CCSpriteFrameCache 217

15.3.3 CCAnimationCache 217

15.4对象池机制:可回收与重复使用 218

15.5对象池实现 218

15.6落实到工厂方法 221

15.7一个简单的性能测试 222

15.8使用时机 223

15.9小结 224

第16章 并发编程 225

16.1单线程的尴尬 225

16.2 pthread 225

16.3线程安全 226

16.4线程间任务安排 227

16.5并发编程辅助 228

16.6小结 233

第四部分 多平台 236

第17章 多平台下的Cocos2d 236

17.1 Windows 8 236

17.2 Windows Phone平台 237

17.3 Cocos2d-HTML5 237

17.4移植 238

17.5小结 238

第18章 可视化开发 239

18.1 CocosBuilder可视化开发 239

18.2使用CocosBuilder创建场景 239

18.3在Cocos2d-x项目中使用场景 241

18.4小结 242

第19章 Cocos2d-HTML5 243

19.1概述 243

19.2开发流程 244

19.2.1开发环境介绍 245

19.2.2搭建开发环境 245

19.2.3开始开发 249

19.3代码安全 255

19.4小结 257

第20章 移植 258

20.1命名原则 258

20.1.1类名称 258

20.1.2类函数 259

20.1.3属性 259

20.1.4选择器 260

20.1.5全局变量、函数与宏 260

20.2跨语言移植 262

20.2.1第一阶段:代码移植 262

20.2.2第二阶段:消除平台差异 265

20.2.3第三阶段:优化 268

20.3小结 269

第五部分 实战篇 272

第21章 实战演练——开发自己的《捕鱼达人》 272

21.1开发前的准备 273

21.1.1视图 273

21.1.2模型 274

21.1.3控制器 275

21.2开始开发 275

21.2.1第一轮迭代 275

21.2.2第二轮迭代 289

21.2.3第三轮迭代 293

附录A 把游戏部署到Android平台 299