注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计程序设计综合Cocos2D应用开发实践指南:利用Cocos2D、Box2D和Chipmunk开发iOS游戏

Cocos2D应用开发实践指南:利用Cocos2D、Box2D和Chipmunk开发iOS游戏

Cocos2D应用开发实践指南:利用Cocos2D、Box2D和Chipmunk开发iOS游戏

定 价:¥99.00

作 者: Rod Strougo,Ray Wenderlich
出版社: 机械工业出版社
丛编项:
标 签: 程序设计 计算机/网络 移动开发

购买这本书可以去


ISBN: 9787111425076 出版时间: 2013-06-01 包装: 平装
开本: 16开 页数: 492 字数:  

内容简介

  《Cocos2D应用开发实践指南:利用Cocos2D、Box2D和Chipmunk开发iOS游戏》封底贴有Pearson Education(培生教育出版集团)激光防伪标签,无标签者不得销售。这是一本系统的、富有趣味的、具有实战性的Cocos2D游戏开发指南。由两位资深的iOS开发工程师和游戏开发工程师撰写,Box2D创始人Erin Catto等多位专家联袂推荐。全书以一个真实有趣的游戏案例Space Viking为主线,通过这个游戏案例的逐步迭代实现,将利用Cocos2D、Box2D和Chipmunk进行游戏开发必须掌握的各项关键技术(场景、图层、精灵、动画、动作、物理效果、粒子系统、碰撞检测、关卡设计、音效……)串联起来,系统讲解了iOS游戏开发者利用Cocos2D进行开发应该学习的理论知识,全面展示了Cocos2D游戏开发的流程、方法和技巧。此外,还介绍了粒子系统的原理,以及通过一个真实的游戏案例讲解了iOS游戏的性能测试和优化。全书分五部分,共17章,第一部分(第1~4章)介绍了如何安装Cocos2D及如何用Cocos2D开始开发游戏,如何为游戏角色添加动画和动作;第二部分(第5~6章)介绍了如何在游戏中添加更多角色,并在此过程中介绍了Cocos2D中的动作和特效及文字功能;第三部分(第7~9章)介绍了如何通过添加菜单,使用声音和滚动来扩展游戏中的游戏关卡;第四部分(第10~13章)介绍了如何运用Cocos2D中的Box2D和Chipmunk为游戏添加特效,如重力、逼真的碰撞等,并添加了一些基于物理的关卡;第五部分(第14~17章)介绍了如何快速添加粒子系统到游戏中,如何添加成就系统和高分榜,以及如何使游戏运行得更快。本书最后是一个附录,其中介绍了Cocos2D中的关键类。

作者简介

  Rod Strougo,资深iOS开发工程师和游戏开发工程师,精通Cocos2D和Box2D等移动游戏开发引擎,经验丰富。Rod接触物理引擎和游戏开发的时间非常早,可以追溯到早期的Apple II,当时他使用Basic编写游戏。Rod 是Prop Group 工作室(www.prop.gr)的创始人和首席开发者,近年来热衷于帮助其他人开始游戏制作之路。Ray Wenderlich,资深iOS开发工程师和游戏开发工程师,精通Cocos2D和Box2D等移动游戏开发引擎,经验丰富。Ray是Razeware LLC创始人,著有一系列iOS应用和苹果应用开发相关的教程,涵盖Objective-C、iPhone/iOS、Cocos2D、Corona、Unity和OpenGL等众多主题,详情请见www.raywenderlich.com。

图书目录

目  录
本书赞誉
译者序
前言
第一部分 Cocos2D初接触
第1章 你好,Cocos2D 1
1.1 下载和安装Cocos2D 2
1.1.1 下载Cocos2D 2
1.1.2 安装Cocos2D模板 3
1.2 创建你的第一个Cocos2D应用HelloWorld 3
1.2.1 查看Cocos2D模板 4
1.2.2 构建Cocos2D HelloWorld项目 4
1.2.3 使HelloWorld更上一层楼 6
1.2.4 添加移动 7
1.3 为更好奇的读者:理解Cocos2D HelloWorld 8
1.3.1 场景和节点 8
1.3.2 开始 10
1.3.3 进一步探索Cocos2D源代码 14
1.4 安装CCHelloWorld到iPhone或iPad上 15
1.4.1 让Xcode为你做所有事情 16
1.4.2 为iPhone或iPad构建应用 17
1.5 小结 17
1.6 习题 17
第2章 你好,Space Viking 18
2.1 创建Space Viking项目 18
2.2 创建Space Viking类对象 19
2.3 创建背景层 20
2.4 GamePlayer层:把维京海盗Ole加入游戏中 23
2.5 GameScene类:把层与场景连接起来 25
2.6 Cocos2D Director 26
2.7 添加运动 27
2.7.1 导入JoyStick类 28
2.7.2 添加JoyStick和按键 28
2.7.3 将JoyStick运动应用于维京海盗Ole 31
2.8 纹理图集 35
2.8.1 纹理和纹理图集的技术细节 36
2.8.2 创建场景1纹理图集 38
2.8.3 添加场景1纹理图集到Space Viking 41
2.9 为更好奇的读者:测试CCSpriteBatchNode 41
2.10 在iPhone 3G和老旧设备上调校性能 43
2.11 小结 43
2.12 习题 43
第3章 Cocos2D动画和动作概述 45
3.1 Cocos2D中的动画 45
3.2 Space Viking设计基础 49
3.3 Cocos2D动作和动画基础 52
3.4 使用属性列表文件存储动画数据 53
3.5 组织、常量和通用协议 55
3.5.1 创建常量文件 56
3.5.2 通用协议文件 57
3.6 GameObject和GameCharacter类 59
3.6.1 创建GameObject 59
3.6.2 创建GameCharacter类 64
3.7 小结 66
3.8 习题 66
第4章 简单碰撞检测和第一个敌人 67
4.1 创建RadarDish和Viking类 67
4.1.1 创建RadarDish类 67
4.1.2 创建Viking类 72
4.2 最终步骤 86
4.3 小结 92
4.4 习题 92
第二部分 更多敌人和更多乐趣
第5章 更多动作、特效和Cocos2D调度器 93
5.1 道具 94
5.1.1 Mallet道具 94
5.1.2 Health道具 96
5.1.3 空间货运飞船 98
5.2 敌人机器人 100
5.3 添加PhaserBullet 111
5.4 GameplayLayer和Viking更新 114
5.5 为更好奇的读者:Cocos2D中的特效 118
5.5.1 Space Viking中有趣的特效 118
5.5.2 运行EffectsTest 120
5.5.3 将精灵和对象恢复正常 120
5.6 小结 121
5.7 习题 121
第6章 文字、字体和书面语 122
6.1 CCLabelTTF类 122
6.2 理解锚点和对齐 123
6.3 CCLabelBMFont 125
6.4 使用Glyph Designer字体设计器 125
6.5 使用Hiero字体构建工具 126
6.6 为更好奇的读者:实时调试 129
6.6.1 更新EnemyRobot 129
6.6.2 更新GameplayLayer 132
6.6.3 文字调试器的其他应用 133
6.7 小结 133
6.8 习题 133
第三部分 从关卡到游戏
第7章 主菜单、关卡完成和致谢场景 135
7.1 Cocos2D中的场景 135
7.2 GameManager概述 136
7.3 Cocos2D中的菜单 144
7.4 场景组织与图像 144
7.5 创建主菜单 146
7.5.1 创建MainMenuScene 146
7.5.2 MainMenuLayer类 147
7.6 其他菜单和GameplayLayer 153
7.6.1 导入Intro、LevelComplete、Credits和Options场景及层 153
7.6.2 GameplayLayer 153
7.6.3 修改SpaceVikingApp-Delegate类 155
7.7 为更好奇的读者:IntroLayer类和LevelComplete类 156
7.8 小结 157
7.9 习题 157
第8章 添加音效 158
8.1 CocosDenshion概述 158
8.2 导入并设置音频文件 158
8.2.1 为Space Viking添加音频 159
8.2.2 音频常量 159
8.3 同步异步加载音频的比较 161
8.3.1 同步加载音频 161
8.3.2 异步加载音频 163
8.3.3 添加音频到GameManager 163
8.4 添加SoundEngine到GameObject 174
8.5 为EnemyRobot添加声音 177
8.6 为Ole添加音效 180
8.7 为菜单场景添加音乐 185
8.7.1 为Gameplay添加音乐 185
8.7.2 为MainMenu添加音乐 185
8.8 为更好奇的读者:如果你需要更多音频控制 185
8.9 小结 186
8.10 习题 186
第9章 当世界变得更大:添加滚动 187
9.1 为更广阔的世界添加逻辑 188
9.2 创建更广阔的世界 190
9.2.1 创建第2个游戏场景 191
9.2.2 创建滚动层 197
9.3 与视差层一起滚动 203
9.4 无限制滚动 206
9.4.1 创建滚动层 206
9.4.2 创建平台场景 214
9.5 瓷片地图 216
9.5.1 安装Tiled工具 217
9.5.2 创建瓷片地图 218
9.5.3 Cocos2D压缩TileMap类 220
9.5.4 添加TileMap到ParallaxNode 222
9.6 小结 224
9.7 习题 225
第四部分 物 理 引 擎
第10章 基础游戏物理学:用Box2D增加现实性 227
10.1 开始 227
10.1.1 关于死亡的疯狂梦想 229
10.1.2 创建新场景 229
10.1.3 添加Box2D文件到你的项目 231
10.1.4 Box2D单位 235
10.2 你好,Box2D 236
10.2.1 创建Box2D对象 237
10.2.2 Box2D调试绘制 240
10.2.3 整合所有元素 241
10.2.4 创建地面 243
10.3 基础Box2D交互和装饰 245
10.3.1 拖动对象 247
10.3.2 质量、密度、摩擦力和弹性 251
10.3.3 用精灵装饰Box2D形体 254
10.4 制作一个Box2D解谜游戏 261
10.5 小结 271
10.6 习题 271
第11章 中级游戏物理学:建模、竞速和跨越 272
11.1 开始 272
11.1.1 添加资源文件 272
11.1.2 创建基本的Box2D场景 273
11.2 用Box2D创建一个小车 283
11.2.1 用Box2D创建一个定制图形 284
11.2.2 使用Vertex Helper工具 285
11.2.3 用Box2D旋转关节添加轮子 288
11.3 让小车移动和跳跃 291
11.3.1 利用加速计使小车移动 292
11.3.2 让它可滚动 294
11.3.3 力和冲量 302
11.3.4 固定倾卸台 302
11.3.5 让小车跳跃 303
11.3.6 更灵敏的转向 306
11.4 小结 307
11.5 习题 307
第12章 高级游戏物理学:更真实的物体 308
12.1 关节和人偶:带Ole回到场景 308
12.1.1 限制旋转关节 309
12.1.2 使用柱状关节 310
12.1.3 如何在恰当地点创建多个形体和关节 311
12.1.4 添加Ole:实现 313
12.2 添加障碍物和桥梁 318
12.2.1 添加桥梁 318
12.2.2 添加尖刺 321
12.2.3 添加改良的主循环 325
12.3 关底战斗 326
12.3.1 危险的挖掘机 334
12.3.2 最后一击:添加通关后电影序幕 340
12.4 小结 344
12.5 习题 344
第13章 Chipmunk物理引擎(不需要Alvin) 345
13.1 Chipmunk引擎是什么 345
13.2 Chipmunk引擎入门 347
13.2.1 添加Chipmunk引擎到你的项目中 351
13.2.2 创建基本的Chipmunk引擎场景 354
13.3 添加精灵并使它们移动 361
13.3.1 通过直接设置速度跳跃 366
13.3.2 通过设置表面速度移动地面 367
13.3.3 地面碰撞检测 367
13.3.4 Chipmunk引擎裁判器和法线 368
13.3.5 碰撞检测实现 368
13.3.6 移动和跳跃实现 372
13.4 Chipmunk引擎和约束 376
13.4.1 旋转平台 378
13.4.2 枢轴、弹簧和普通平台 380
13.5 伟大的逃脱 385
13.5.1 跟随Ole 385
13.5.2 布局平台 387
13.5.3 Ole动画序列 387
13.5.4 音乐和音效 391
13.5.5 添加背景 392
13.5.6 添加赢/输条件限制 393
13.6 小结 394
13.7 习题 394
第五部分 粒子系统、游戏中心和性能
第14章 粒子系统:创建火焰、雪花、冰和更多 395
14.1 内置粒子系统 396
14.1.1 运行内置粒子系统 396
14.1.2 在沙漠中降雪 397
14.2 粒子设计器入门 398
14.3 为Space Viking创建并添加粒子系统 401
14.4 小结 406
14.5 习题 406
第15章 游戏中心的成就系统和高分榜 407
15.1 什么是游戏中心 407
15.2 为你的应用启用游戏中心 409
15.2.1 获取iOS开发者账号 409
15.2.2 为应用创建一个应用程序ID 409
15.2.3 在iTunes里注册你的应用 412
15.2.4 启用游戏中心支持 415
15.3 游戏中心身份验证 416
15.3.1 确定游戏中心可用 416
15.3.2 尝试给玩家进行验证 416
15.3.3 如果验证状态发生变化则告知 417
15.3.4 实现 418
15.4 配置成就系统 423
15.4.1 添加成就系统到iTunesConnect 423
15.4.2 成就系统如何工作 425
15.5 实现成就系统 426
15.5.1 创建游戏状态类 426
15.5.2 为加载和保存数据创建帮助函数 429
15.5.3 修改GCHelper以发送成就数据 431
15.5.4 在Space Viking中使用GameState和GCHelper 436
15.5.5 在应用中显示成就 440
15.6 设置并实现高分榜 442
15.6.1 在iTunes Connect里设置高分榜 442
15.6.2 高分榜的工作原理 443
15.6.3 实现高分榜 444
15.6.4 在游戏中显示高分榜 445
15.7 小结 448
15.8 习题 448
第16章 性能优化 449
16.1 CCSprite与CCSpriteBatchNode比较 449
16.1.1 测试性能差别 453
16.1.2 对纹理和纹理图集的建议 453
16.2 复用CCSprite 455
16.3 Cocos2D分析器 457
16.4 用Instruments发现性能瓶颈 459
16.4.1 时间分析器 460
16.4.2 OpenGL Driver Instrument 461
16.5 小结 464
16.6 习题 464
第17章 结束语 465
17.1 展望未来 466
17.2 Android及其他平台 466
17.3 最后的思考 467
附录 Cocos2D的主要类 468

本目录推荐