《Cocos2D-X游戏开发技术精解》
基本信息
作者: 刘剑卓
出版社:人民邮电出版社
ISBN:9787115314840
上架时间:2013-5-30
出版日期:2013 年5月
开本:16开
页码:420
版次:1-1
所属分类:计算机 > 软件与程序设计 > 移动开发 > 其他移动开发技术
更多关于 》》》《Cocos2D-X游戏开发技术精解》
内容简介
计算机书籍
cocos2d-x是一款支持多平台的 2d 手机游戏引擎,支持ios、android、blackberry等众多平台。当前,很多移动平台流行的游戏,都是基于cocos2d-x开发的。
《cocos2d-x游戏开发技术精解》详细介绍如何使用cocos2d-x引擎开发自己的移动平台游戏。全书共15章,主要内容包括:cocos2d-x引擎简介;如何建立跨平台的开发环境;引擎的核心模块—渲染框架;如何实现动态画面和用户交互;二维游戏中背景的实现方法和技术;box2d物理引擎;如何掌握声音引擎的用法;cocos2d-x引擎的文件操作模块和内存管理机制;各种各样的粒子效果;如何掌握利用lua脚本制作游戏的能力; cocos2d-html5引擎版本;引擎的附加功能等。最后,《cocos2d-x游戏开发技术精解》和读者一起展望了cocos2d-x引擎的未来。
作为cocos2d-x的权威指南,本书得到了cocos2d-x引擎开发者的建议以及指导。本书适合对cocos2d-x感兴趣的以及有志于学习和从事移动平台游戏开发的读者阅读参考。
目录
《cocos2d-x游戏开发技术精解》
第1章 cocos2d-x引擎的介绍 1
1.1 何为游戏引擎 1
1.1.1 游戏的核心—引擎 1
1.1.2 引擎的特点 2
1.1.3 知名的引擎介绍 4
1.1.4 引擎的分类 5
1.2 cocos2d-x引擎的来历 8
1.3 引擎的版本 9
1.4 下载与安装 10
1.5 引擎的组成 13
1.6 技术文档 15
1.7 成功的游戏 17
1.8 cocos2d-x引擎的体系 18
1.9 cocos2d-x引擎的版权声明 19
1.10 本章小结 20
第2章 cocos2d-x引擎的开发环境 21
2.1 跨平台的开发 21
2.2 建立开发环境 23
2.2.1 pc开发环境 23
.2.2.2 android开发环境 26
2.2.3 ios开发环境 35
2.3 引擎中的混合编译 38
2.3.1 java与c++的混合编译 38
2.3.2 objective-c与c++的混合编译 41
2.4 引擎的起点 42
2.4.1 应用程序入口 43
2.4.2 引擎应用入口 44
2.5 丰富的示例程序 46
2.5.1 testcpp示例项目 46
2.5.2 脚本示例项目 47
2.5.3 moonwarriors示例项目 47
2.6 本章小结 48
第3章 引擎的核心——渲染框架 49
3.1 基本框架 50
3.1.1 引擎的位置 50
3.1.2 根源种子 51
3.1.3 子类结构 57
3.2 渲染框架 57
3.2.1 框架结构 58
3.2.2 摄像机类(cccamera) 59
3.2.3 导演类(ccdirector) 59
3.2.4 场景类(ccscene) 62
3.2.5 图层类(cclayer) 64
3.2.6 精灵类(ccsprite) 68
3.2.7 精灵集合类(ccspritebatchnode) 72
3.2.8 精灵帧缓冲(ccspriteframecache) 74
3.2.9 zwoptex纹理编辑器 76
3.3 文字与字体 80
3.3.1 ttf类型标签(cclabelttf) 81
3.3.2 bmfont标签类(cclabelbmfont) 84
3.3.3 atlas标签类(cclabelatlas) 87
3.4 菜单按钮 89
3.5 几何绘制drawprimitives 94
3.6 cocosbuilder编辑器 95
3.6.1 cocosbuilder使用指南 95
3.6.2 引擎中的应用 97
3.7 本章小结 98
第4章 动作功能 100
4.1 概述 100
4.2 动作基类 101
4.2.1 动作类的继承关系 102
4.2.2 动作基类ccaction的成员函数 102
4.2.3 类ccnode中与动作有关的函数 104
4.3 时间动作 105
4.3.1 即时动作 105
4.3.2 持续动作 109
4.4 组合动作类 116
4.4.1 序列动作类(ccsequence) 116
4.4.2 同步动作类(ccspawn) 118
4.4.3 重复动作类(ccrepeat & ccrepeatforever) 119
4.5 可变速度类(cceaseaction) 120
4.5.1 cceasein、cceaseout和cceaseinout 122
4.5.2 easesinein、easesineout和easesineinout 124
4.5.3 cceasebackin、cceasebackout和cceasebackinout 124
4.5.4 easeexponentialin、easeexponentialout和easeexponentialinout 125
4.5.5 cceasebouncein、ccbounceout和ccbounceinout 125
4.5.6 cceaseelasticin、cceaseelasticout和cceaseelasticinout 125
4.6 速度类(ccspeed) 125
4.7 延迟动作类(ccdelay) 127
4.8 跟随动作类(ccfollow) 128
4.9 扩展动作类 129
4.9.1 概述 129
4.9.2 翻页动作(ccpageturn3d) 130
4.9.3 波纹动作(ccwaves3d) 130
4.9.4 格子动作类(ccgridaction) 131
4.10 动画动作类 132
4.10.1 精灵帧 133
4.10.2 精灵帧缓冲 134
4.10.3 动画类 135
4.10.4 动画动作 136
4.11 动画编辑器 136
4.11.1 概述 136
4.11.2 cocosbuilder编辑器中的精灵动画 137
4.11.3 spritex草莓编辑器 138
4.11.4 motionwelder动画编辑器 139
4.12 样例程序 141
4.13 本章小结 143
第5章 用户交互 147
5.1 概述 147
5.2 玩家交互信息 149
5.3 触摸操作的处理机制 149
5.4 接收操作 153
5.5 分发机制 154
5.6 处理响应 157
5.7 多点触碰 159
5.8 加速计的响应函数 161
5.9 本章小结 162
第6章 游戏背景 164
6.1 概述 164
6.2 2d游戏背景的类型 164
6.3 砖块地图tile map 166
6.4 砖块地图编辑器 168
6.4.1 地图编辑器概述 168
6.4.2 tile map editor(砖块地图编辑器) 169
6.4.3 制作一张游戏地图 171
6.4.4 编辑器中的属性功能 173
6.5 地图数据的格式 175
6.5.1 编辑器导出的文件 175
6.5.2 地图文件分析 176
6.6 砖块地图的实现 178
6.6.1 砖块地图类cctmxtiledmap 179
6.6.2 地图图层类cctmxlayer 181
6.6.3 地图物体层cctmxobjectgroup 183
6.7 示例项目 184
6.8 背景的滚动与角色移动 186
6.9 多层背景滚动效果 188
6.10 本章小结 190
第7章 物理模拟与碰撞检测 192
7.1 概述 192
7.2 游戏中的碰撞检测 193
7.3 碰撞检测的方法 194
7.3.1 平面几何在碰撞检测中的应用 194
7.3.2 物体的包围盒 197
7.3.3 aabb碰撞检测技术 198
7.4 基本物理知识 199
7.5 你好!box2d! 201
7.5.1 概述 201
7.5.2 物理世界 202
7.5.3 游戏中的两个世界 202
7.6 box2d的基础知识 203
7.6.1 概述 204
7.6.2 概念定义 204
7.6.3 物理引擎的模块 205
7.7 引擎内核 205
7.7.1 基本配置 206
7.7.2 内存管理机制 207
7.7.3 工厂模式 208
7.7.4 数据单位 208
7.7.5 用户数据 209
7.8 物理世界world 210
7.8.1 创建和摧毁一个世界 210
7.8.2 让世界运转起来 211
7.8.3 探索世界 212
7.8.4 aabb查询 213
7.8.5 光线投射(ray casts) 214
7.9 形状shapes 216
7.9.1 碰撞模块 216
7.9.2 形状shape的作用 216
7.9.3 圆形(circle shapes) 216
7.9.4 多边形(b2polygonshape) 217
7.10 框架fixtures 218
7.10.1 动态模块(dynamicsmodule) 219
7.10.2 框架(fixtures) 219
7.10.3 密度(density) 219
7.10.4 摩擦(friction) 220
7.10.5 恢复(restitution) 220
7.10.6 筛选(filtering) 220
7.10.7 感应器(sensors) 221
7.11 物体bodies 222
7.11.1 物体定义 222
7.11.2 位置和角度(position and angle) 223
7.11.3 阻尼(damping) 223
7.11.4 休眠参数(sleep parameters) 224
7.11.5 固定旋转(fixed rotation) 224
7.11.6 子弹(bullets) 224
7.11.7 活动状态(activation) 225
7.11.8 用户数据(user data) 226
7.12 关节(joints) 226
7.12.1 关节的定义(jointdef) 226
7.12.2 关节的属性 227
7.12.3 距离关节(distance joint) 228
7.12.4 旋转关节(revolute joint) 229
7.12.5 移动关节(prismatic joint) 230
7.12.6 滑轮关节(pulley joint) 231
7.12.7 齿轮关节(gear joint) 232
7.12.8 鼠标关节(mouse joint) 234
7.12.9 线性关节(line joint) 235
7.12.10 焊接关节(weld joint) 235
7.13 接触(contants) 235
7.13.1 概述 236
7.13.2 接触类(contact class) 237
7.13.3 访问接触(accessing contacts) 237
7.13.4 接触监听器(contact listener) 238
7.13.5 接触筛选(contact filtering) 240
7.14 示例项目 241
7.14.1 box2dtest示例项目 241
7.14.2 调试绘图debugdraw 243
7.14.3 创建精灵刚体 244
7.15 本章小结 246
第8章 游戏中的声音 249
8.1 概述 249
8.2 音乐与音效 250
8.3 声音格式 250
8.4 cocosdenshion声音模块 252
8.5 背景音乐操作函数 253
8.6 声音音效操作函数 255
8.7 示例程序 256
8.8 本章小结 259
第9章 文件操作模块 261
9.1 概述 261
9.2 引擎文件操作模块 261
9.3 读取文件 263
9.4 写入文件 267
9.5 游戏中用户数据 269
9.5.1 游戏中的用户数据 269
9.5.2 用户数据的基本类型 270
9.5.3 读取与写入操作 271
9.6 示例程序 272
9.7 本章小结 274
第10章 内存管理机制 277
10.1 内存管理概述 277
10.2 引用计数 278
10.3 自动释放池 280
10.3.1 使用方法 280
10.3.2 实现原理 281
10.4 管理模式 284
10.4.1 引擎当中的应用 284
10.4.2 缓冲区 285
10.5 日志调试方式 286
10.6 本章小结 288
第11章 粒子系统 290
11.1 概述 290
11.2 粒子效果 291
11.3 粒子系统的来历 292
11.4 引擎当中的粒子系统 293
11.5 粒子的生命周期 294
11.6 粒子的属性 295
11.7 粒子发射器属性 296
11.7.1 发射器共有的属性 296
11.7.2 重力发射器模式(gravity) 304
11.7.3 半径发射器模式(radius) 306
11.8 粒子效果编辑器 307
11.8.1 概述 308
11.8.2 particle designer的使用方法 308
11.8.3 引擎中应用 310
11.9 本章小结 312
第12章 lua脚本语言 314
12.1 概述 314
12.2 lua脚本语言简介 315
12.3 为什么需要它? 316
12.3.1 简易性 316
12.3.2 可扩展性 316
12.3.3 高效性 317
12.3.4 可移植性 317
12.4 lua脚本语言的语法 318
12.4.1 类型与数值 318
12.4.2 表达式 320
12.4.3 语句 322
12.4.4 函数 326
12.5 lua在引擎中的应用 328
12.5.1 lua与c/c++ 328
12.5.2 引擎中的脚本引擎 329
12.6 样例程序 331
12.6.1 脚本引擎初始化 332
12.6.2 游戏内容的实现脚本 333
12.6.3 农场层的实现 334
12.6.4 菜单层的实现 337
12.7 本章小结 338
第13章 cocos2d-html5引擎版本 340
13.1 概述 340
13.2 html的发展史 341
13.2.1 html版本 341
13.2.2 xhtml版本 342
13.2.3 html5是未来之星 342
13.3 html5新特性 342
13.3.1 跨平台的特性 343
13.3.2 canvas api 343
13.3.3 webgl 344
13.3.4 其他特性 345
13.4 javascript语言基础 346
13.4.1 概述 346
13.4.2 变量 347
13.4.3 数据类型 348
13.4.4 运算符 348
13.4.5 语句 351
13.4.6 对象 352
13.4.7 函数 353
13.4.8 事件 354
13.5 cocos2d-html5引擎 356
13.5.1 html5版本介绍 356
13.5.2 安装引擎 357
13.5.3 示例程序 357
13.5.4 引擎的架构 360
13.6 js binding技术的实现 362
13.6.1 概述 362
13.6.2 spidermonkey 362
13.6.3 示例程序 363
13.7 本章小结 364
第14章 引擎之外的附加功能 366
14.1 概述 366
14.2 网络通信支持 367
14.2.1 http介绍 367
14.2.2 curl库(libcurl) 368
14.2.3 http在引擎中的应用 368
14.2.4 http示例项目 372
14.2.5 socket的介绍 376
14.2.6 bsd socket在引擎中的应用 378
14.3 收费模式 379
14.3.1 下载计费 379
14.3.2 内置计费 380
14.3.3 广告版本 380
14.4 社交网络在游戏中的应用 381
14.4.1 game center 382
14.4.2 openfeint 384
14.5 数据分析 385
14.5.1 flurry介绍 386
14.5.2 友盟 390
第15章 cocos2d-x引擎的未来 391
15.1 概述 391
15.2 cocos2d引擎的走势 391
15.3 cocos2d-x引擎的不足 392
15.3.1 丰富的ui 393
15.3.2 完善的工具 393
15.3.3 支持网络通信 395
15.3.4 版本的统一 395
15.3.5 数据安全 396
15.4 cocos2d-x引擎增强的功能 396
15.4.1 良好的中文支持 397
15.4.2 游戏基本框架 397
15.4.3 游戏逻辑支持 398
15.4.4 脚本化编程 399
15.4.5 可视化的操作界面 400
15.5 会不会有cocos3d 401
15.6 本章小结 403
相关推荐
本套教学PPT旨在深入浅出地讲解Cocos2d-x游戏开发的核心技术,帮助开发者快速掌握这一工具。 首先,"初识Cocos2d-x"章节将介绍Cocos2d-x的历史、特点、适用平台以及它与Cocos2d的关系。这部分会讲解Cocos2d-x的项目...
本光盘是《Cocos2d-x游戏开发实战精解》一书的配书光盘,内容介绍如下。 (1)本书教学视频:该文件夹收录了本书的配套多媒体教学视频,可用暴风影音等视频播放器播放。 (2)本书源文件:该文件夹收录了本书涉及...
总的来说,《Cocos2d-x 3.x游戏开发实战》是一本全面覆盖Cocos2d-x 3.x开发技术的指南,它不仅教授基本概念和技术,还通过实例深入解析游戏开发的各个层面。无论你是初学者还是有一定经验的开发者,这本书都能提供...
精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
总的来说,《Cocos2d-x 3.X游戏开发入门精解》是初学者步入Cocos2d-x游戏开发领域的理想指南,它涵盖了从基础环境搭建到复杂功能实现的全过程,旨在帮助读者快速掌握游戏开发的核心技术,踏上游戏编程的旅程。...
《精通COCOS2D-X游戏开发进阶卷》是一本深入探讨Cocos2d-x游戏引擎的专业书籍,旨在帮助开发者提升在Cocos2d-x框架下的游戏制作技能。Cocos2d-x是一款广泛使用的开源游戏开发框架,它基于C++,同时也支持Lua和...
资源名称:大富翁手机游戏开发实战基于Cocos2d-x3.2引擎内容简介:李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领读者一步一步从零开始进行大富翁移动游戏的开发...
内容部分并没有提供关于Cocos2d-x或者游戏开发的具体技术细节,而是转向了提供电子书的服务。这里涉及的几个点为: 1. 电子书资源提供:提到了提供各种电子书资源下载,范围包括计算机科学、文学、艺术、设计、医学...
《使用cocos2d-x-2.0-2.0.4开发的简单跨平台益智类魔塔小游戏》 cocos2d-x是一个开源的游戏开发框架,它基于C++,支持多平台,包括iOS、Android、Windows以及Mac OS等。在本项目中,开发者利用cocos2d-x 2.0.4版本...
《Cocos2d-x实战 JS卷 Cocos2d-JS开发》是一本深入探讨Cocos2d-x游戏引擎JavaScript版本使用的专业书籍。Cocos2d-x是全球范围内广泛采用的游戏开发框架,尤其适用于2D游戏的制作,而Cocos2d-JS则是其JavaScript接口...
【cocos2d-x游戏引擎概述】 ...通过学习和分析这款三国策略游戏的源码,开发者不仅可以了解cocos2d-x框架的使用,还能深入理解游戏开发中的各种设计决策和技术实现,对提升游戏开发技能大有裨益。
《cocos2d-x案例开发大全》第二章的源码主要涵盖了使用cocos2d-x进行游戏开发的各种实践技巧和示例。cocos2d-x是一个开源的游戏开发框架,基于C++,支持跨平台,包括iOS、Android、Windows等多个操作系统。本章的...
cocos2d-x 是一个开源的游戏开发框架,使用 C++ 语言编写,支持多平台发布,包括 iOS、Android、Windows、macOS、Linux 和 Web。cocos2d-x v3.16 是该框架的一个版本号,本文档主要介绍了该版本的安装流程以及环境...
《Cocos2d-x实战:C++卷(2版)源代码》这本书是关于使用Cocos2d-x游戏引擎进行游戏开发的专业指南。Cocos2d-x是一个开源的、跨平台的游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言...
这个压缩包“cocos2d-x-3.1.zip”包含了Cocos2d-x框架的3.1版本,这是一个经典且相对旧的版本,可能对于那些寻找历史版本或者想要研究早期游戏开发技术的人来说非常有价值。由于官方网站已经不再提供这个版本的直接...
这份API文档不仅提供了关于Cocos2d-x的基本信息,还深入到具体的技术细节,对于学习和使用cocos2d-x开发游戏的开发者来说,是非常宝贵的参考资料。通过这份文档,开发者可以了解如何利用cocos2d-x的API构建游戏场景...
cocos2d-x 是一个跨平台的游戏开发框架,它基于C++,同时提供了Lua和JavaScript的绑定,让开发者可以方便地在多种操作系统上创建2D游戏、演示程序和其他图形交互应用。这个“cocos2d-x-3.8.zip”压缩包包含的是cocos...
《Cocos2d-x实战C++卷》是关东升所著的一本深入探讨Cocos2d-x游戏引擎开发的专业书籍。Cocos2d-x是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言为主要编程...