《iOS 5 cocos2d游戏开发实战(第2版) 》国内首本基于iOS5 cocos2d开发图书

会有一股神秘感。 提交于 2020-01-20 11:25:32

书        名: iOS 5 cocos2d游戏开发实战(第2版)

书        号: 9787302303039

出   版  社: 清华大学出版社

定        价: 59.80元

出 版 日 期: 2012-10-01

作        者:  (美)伊特海姆 (德)勒夫

译         者:  同济大学苹果俱乐部

系 列书 名: 清图程序设计系列

开         本: 16 开

页        数: 456

印 刷 时 间: 2012-10-15

字        数: 694千字

版         次: 2

包        装: 平装

样章试读:http://www.tupbook.com/BookView.aspx?id=104

 

内容简介: 《iOS 5 cocos2d游戏开发实战(第2版)》将引导您开发富有吸引力的2D游戏。书中展示了如何使用cocos2d这款强大的游戏引擎来开发iPhone和iPad游戏,此外还介绍了游戏中的瓦片地图、虚拟摇杆、Game Center等。

本书主要内容:

• 移动游戏开发的过程和最佳实践,包括精灵批处理技术、纹理图册、视差滚动、触屏以及加速计输入。

• 使用Box2D、Chipmunk物理引擎以及其他cocos2d相关的库和工具提升游戏性能。

• 在cocos2d应用中添加UIKit视图,以及在UiKit 视图中添加cocos2d。

• 详细介绍Kobold2D开发环境及其预配置库,包括cocos3d和Lua。

最重要的是,《iOS 5 cocos2d游戏开发实战(第2版)》将从最基础的地方引领您开发游戏,一步一步地指导创建示例游戏。这些示例都是根据App Store中流行的游戏改编而成的,它们能让您了解cocos2d游戏引擎中重要的概念和相关工具的使用,比如TexturePacker(纹理图册)、PhysicsEditor(物理性状编辑器)、Particle Designer(粒子效果)、Glyph Designer(位图字体)等。

本书详细介绍了cocos2d游戏引擎,关注的是创建完整cocos2d游戏的过程而不是展示大量的iOS SDK 或OpenGL代码。同时还介绍了不同的实现方法,展示了用来辅助cocos2d游戏开发最好且免费的商用工具,阐释了作者完善过的cocos2d游戏引擎——Kobold2D,让您的游戏在App Store中更具竞争力。

前言     2009年5月,我第一次接触了Mac OS平台,并且学习了Xcode、Objective-C和cocos2d。即便是对于经验丰富的程序员来说,这也是一个不小的挑战。就在那段时间,我意识到cocos2d真的很棒。但是,相比我当时学习的其他技术,cocos2d的教程、文档和说明文章实在是太匮乏了。     转眼就到了2010年5月。在这一年里,我完成了4个cocos2d项目。我对Objective-C和cocos2d的使用都更加娴熟了。但是,我发现其他很多的程序员还在为一些基本的问题感到困惑,甚至产生误解,这些情景让我想到了一年前痛苦的自己。有关cocos2d的文档依然处于严重缺乏的状态。     今天,有不少使用cocos2d的开发者在博客上发布cocos2d教程、分享他们的使用心得,并因此引起了广泛的关注。大家都在积极地撰写着cocos2d的文档,只可惜你一言我一语,太过分散,读者很难对cocos2d有一个系统的理解。所以,这时候就需要有一个网站来整合这些散落在网络上的宝贵资料。     为此,我创建了一个网站(www.learn-cocos2d.com)来分享我对cocos2d和游戏开发的理解。这个网站上有一些教程,列出了一些常见问题的解答,并提供链接以便对cocos2d感兴趣的读者能够找到所有与cocos2d有关的重要资料。相应的,我也会出售一些与cocos2d相关的产品,希望有一天它能助我达到经济独立的终极目标。我知道这个网站可以令所有人受益。     从网站发布的第一天起,它就获得了很大的成功(我做梦也没想到)。同时,在网站发布后的24小时内,Jack Nutting就问我是不是考虑写一本有关cocos2d的书。于是,在经历了一系列小故事之后,就有了现在你手上的这本书。     我把我所知道的一切都放在了我的网站上,也写进了这本书里,但这些内容最多也就占全书的1/4。我希望这本书可以以前所未有的详细叙述向大家介绍cocos2d的工作原理和使用方法,如果真是这样,那么我这4个月夜以继日的辛勤劳动就真的值了!     在这本书的撰写过程中,尤其是在本书第二版更新内容的过程中,我学到了很多东西。我最大的期待就是你能够从本书中学习到所有你想要知道的cocos2d和游戏开发知识!       写作cocos2d图书的过程让我意识到cocos2d还有改进的空间。我强烈感觉到需要一个更好的、让游戏开发初学者更容易上手的cocos2d,因而创建了Kobold2D。本书第16章和www.kobold2d.com上都介绍了Kobold2D。读者可以放心的是,在本书中学到的几乎全部内容都适用于Kobold2D。

 

目录: 第1章  简介 / 1         1.1  本书第2版的新增内容 / 2         1.2  选择iOS版cocos2d的理由 / 3                 1.2.1  免费 / 3                 1.2.2  开源 / 3                 1.2.3  Objective-C / 3                 1.2.4  2D游戏引擎 / 3                 1.2.5  物理引擎 / 4                 1.2.6  技术难度较低 / 4                 1.2.7  依然需要编程 / 4                 1.2.8  超棒的cocos2d社区 / 5         1.3  cocos2d-iphone项目的未来 / 5         1.4  其他cocos2d游戏引擎 / 6         1.5  本书读者对象 / 7         1.6  阅读前提 / 7                 1.6.1  编程经验 / 7                 1.6.2  Objective-C / 7         1.7  本书内容 / 8                 1.7.1  iOS游戏开发新手将学会 什么 / 8                 1.7.2  iOS应用程序开发者将学会 什么 / 9                 1.7.3  cocos2d开发者将学会什么 ..... 9         1.8  章节介绍 / 9         1.9  本书的源代码 / 10         1.10  问题和反馈 / 11

 

第2章  入门 / 13         2.1  准备工作 / 13                 2.1.1  系统要求 / 13                 2.1.2 注册成为iOS开发者 / 14                 2.1.3 证书和授权文件 / 14                 2.1.4 下载并安装iOS SDK / 14                 2.1.5 下载并安装cocos2d / 15         2.2 HelloWorld应用程序 / 18                 2.2.1 HelloWorld文件在项目中 的位置 / 19                 2.2.2 资源 / 19                 2.2.3 支持文件 / 19                 2.2.4 HelloWorld类 / 21         2.3 cocos2d中的内存管理问题 / 24         2.4 改变世界 / 27         2.5 你还应该知道的 / 29                 2.5.1 iOS设备 / 29                 2.5.2 关于内存的使用 / 30                 2.5.3 iOS模拟器 / 31                 2.5.4 关于日志 / 32         2.6 本章小结 / 33

 

第3章 基础知识 / 35         3.1 场景图 / 35         3.2 CCNode类层次结构 / 38         3.3 CCNode类 / 39                 3.3.1 节点的处理方式 / 39                 3.3.2 动作的处理方式 / 40                 3.3.3 消息调度 / 41         3.4 Director类、场景和层 / 44                 3.4.1 Director类 / 44                 3.4.2 CCScene类 / 46                 3.4.3 场景和内存 / 47                 3.4.4 推进和弹出场景 / 48                 3.4.5 CCTransitionScene类 / 49                 3.4.6 CCLayer类 / 51         3.5 CCSprite类 / 56                 3.5.1 定位点揭秘 / 57                 3.5.2 纹理大小 / 57         3.6 CCLabelTTF类 / 58         3.7 菜单 / 59         3.8 动作 / 61                 3.8.1 间隔动作 / 62                 3.8.2 瞬时动作 / 67         3.9 cocos2d中的单件类 / 69         3.10 cocos2d测试案例 / 71         3.11 本章小结 / 71

 

第4章 你的第一个游戏 / 73         4.1 按部就班地创建项目 / 73         4.2 添加Player Sprite / 78         4.3 加速计输入 / 80         4.4 首次测试运行 / 81         4.5 玩家速度 / 81         4.6 添加障碍物 / 84         4.7 碰撞检测 / 91         4.8 标签和位图字体 / 92                 4.8.1 添加得分标签 / 92                 4.8.2 CCLabelBMFont简介 / 93                 4.8.3 使用Glyph Designer创建 位图字体 / 94         4.9 播放音频 / 95         4.10 移植到iPad / 97                 4.10.1 单个通用的应用程序还是 两个单独的应用程序 / 97                 4.10.2 使用Xcode 3移植 到iPad / 98                 4.10.3 使用Xcode 4移植 到iPad / 99         4.11 本章小结 / 100

 

第5章 游戏组件 /101         5.1 使用多个场景 / 101                 5.1.1 添加多个场景 / 101                 5.1.2 正在加载下一段,请做好 准备 / 104         5.2 使用多个层 / 106                 5.2.1 实现关卡的最佳方法 / 112                 5.2.2 CCLayerColor / 113         5.3 从CCSprite类继承游戏 对象 / 114         5.4 使用CCSprite复合游戏 对象 / 115         5.5 奇妙的CCNode派生类 / 119                 5.5.1 CCProgressTimer / 119                 5.5.2 CCParallaxNode / 120                 5.5.3 CCRibbon / 122                 5.5.4 CCMotionStreak / 124         5.6 本章小结 / 125

 

第6章 深入了解精灵 / 127         6.1 Retina显示屏幕 / 127         6.2 CCSpriteBatchNode / 129                 6.2.1 何时使用 CCSpriteBatchNode / 131                 6.2.2 示例项目 / 131         6.3 精灵动画初体验 / 137         6.4 用于创建动画的辅助类别 / 139         6.5 使用纹理图册 / 141                 6.5.1 何为纹理图册 / 141                 6.5.2 TexturePacker工具介绍 / 141                 6.5.3 为TexturePacker准备项目 ... 142                 6.5.4 使用TexturePacker创建纹理 图册 / 143                 6.5.5 在cocos2d中使用纹理 图册 / 146                 6.5.6 改进CCAnimation辅助 类别 / 147                 6.5.7 将所有图像都放入一个 纹理图册中 / 149         6.6 本章小结 / 150

 

第7章  滚屏射击游戏(上) / 151         7.1 高级视差滚屏 / 151                 7.1.1 将背景创建为条纹 / 151                 7.1.2 在代码中重建背景 / 153                 7.1.3 移动ParallaxBackground ..... 155                 7.1.4 视差滚动的速度因素 / 156                 7.1.5 实现背景的无限滚动 / 158                 7.1.6 消除闪烁 / 160                 7.1.7 重复贴图 / 161         7.2 虚拟手柄 / 162                 7.2.1 引入SneakyInput / 162                 7.2.2 集成SneakyInput / 163                 7.2.3 触摸按钮产生射击 / 165                 7.2.4 为按钮添加皮肤 / 166                 7.2.5 控制动作 / 169                 7.2.6 数字控制 / 171         7.3 本章小结 / 172

 

第8章 滚屏射击游戏(下) /173         8.1 添加BulletCache类 / 173         8.2 关于敌人 / 177         8.3 Entity类的继承体系 / 178                 8.3.1 EnemyEntity类 / 179                 8.3.2 EnemyCache类 / 183                 8.3.3 组件类 / 186         8.4 射击开火 / 189         8.5 大怪物的生命条 / 190         8.6 本章小结 / 193

 

第9章 粒子效果 / 195         9.1 粒子效果实例 / 195         9.2 用复杂方法创建粒子效果 / 198                 9.2.1 继承CCParticleSystem: 点粒子还是方形粒子 / 199                 9.2.2 CCParticleSystem属性 / 202         9.3 Particle Designer / 210                 9.3.1 Particle Designer介绍 / 210                 9.3.2 使用Particle Designer生成 的粒子效果 / 213                 9.3.3 分享粒子效果 / 214         9.4 在射击游戏中添加粒子 效果 / 216         9.5 本章小结 / 217

 

第10章 瓦片地图 /219         10.1 瓦片地图简介 / 219         10.2 使用TexturePacker处理 图像 / 222         10.3 Tiled(Qt)地图编辑器 / 223                 10.3.1 创建新的瓦片地图 / 223                 10.3.2 设计瓦片地图 / 224         10.4 在cocos2d中使用直角瓦片 地图 / 227                 10.4.1 定位被触摸的瓦片 / 230                 10.4.2 提高性能和可读性 / 232                 10.4.3 使用对象层 / 233                 10.4.4 绘制对象层矩形 / 234                 10.4.5 滚动瓦片地图 / 237         10.5 本章小结 / 238

 

第11章 斜角瓦片地图 / 241         11.1 设计斜角瓦片地图图形 / 242         11.2 使用Tiled编辑斜角瓦片 地图 / 244                 11.2.1 新建斜角瓦片地图 / 245                 11.2.2 创建新的斜角瓦片集 / 246                 11.2.3 设计斜角瓦片地图的基本 规则 / 246         11.3 将斜角瓦片地图应用到游戏 编程中 / 248                 11.3.1 在cocos2d中加载斜角 瓦片地图 / 248                 11.3.2 在cocos2d中设置斜角 瓦片地图 / 248                 11.3.3 定位斜角瓦片 / 250                 11.3.4 滚动斜角瓦片地图 / 252                 11.3.5 斜角瓦片地图的边界 问题 / 253                 11.3.6 增加可移动的玩家角色 ... 255         11.4 在游戏中加入更多内容 / 262         11.5 本章小结 / 263

 

第12章 物理引擎 / 265         12.1 物理引擎的基本概念 / 265         12.2 物理引擎的局限性 / 266         12.3 Box2D与Chipmunk / 266         12.4 Box2D / 267                 12.4.1 Box2D眼中的世界 / 268                 12.4.2 把移动范围限制在 屏幕内 / 269                 12.4.3 转换点 / 271                 12.4.4 在Box2D世界中添加 盒子 / 272                 12.4.5 连接精灵和刚体 / 273                 12.4.6 碰撞检测 / 275                 12.4.7 连接刚体 / 277         12.5 Chipmunk / 278                 12.5.1 面向对象的Chipmunk .... 278                 12.5.2 构建Chipmunk物理 空间 / 279                 12.5.3 将盒子添加到物理 空间中 / 280                 12.5.4 添加小盒子 / 281                 12.5.5 更新盒子的精灵 / 283                 12.5.6 Chipmunk碰撞实践 / 284                 12.5.7 Chipmunk中的关节 / 285         12.6 本章小结 / 287

 

第13章 弹球游戏 /289         13.1 图形:凸多边形和逆时针 方式/ 289         13.2 使用PhysicsEditor / 290                 13.2.1 定义发射器形状 / 292                 13.2.2 定义弹球桌形状 / 293                 13.2.3 定义挡板 / 296                 13.2.4 定义反弹器和球 / 297                 13.2.5 保存并发布 / 297         13.3 编写弹球游戏 / 298                 13.3.1 BodyNode类 / 298                 13.3.2 创建弹球桌 / 302                 13.3.3 Box2D调试绘制 / 307                 13.3.4 添加球 / 308                 13.3.5 使球动起来 / 310                 13.3.6 添加反弹器 / 313                 13.3.7 发射器 / 314                 13.3.8 挡板 / 323         13.4 本章小结 / 326

 

第14章 Game Center / 329         14.1 激活Game Center / 329                 14.1.1 在iTunes Connect中创建 应用程序 / 330                 14.1.2 建立排行榜和成就 / 330                 14.1.3 创建cocos2d Xcode 项目 / 331                 14.1.4 配置Xcode项目/ 331                 14.1.5 小结 / 334         14.2 Game Kit编程 / 335                 14.2.1 GameKitHelper委托 / 335                 14.2.2 检查Game Center是否 可用 / 336                 14.2.3 验证本地玩家身份 / 337                 14.2.4 block对象 / 340                 14.2.5 接收本地玩家的好友 列表 / 341                 14.2.6 排行榜 / 343                 14.2.7 成就 / 348                 14.2.8 联机 / 352                 14.2.9 收发数据 / 356         14.3 本章小结 / 360

 

第15章 cocos2d与UIKit视图 / 361         15.1 Cocoa Touch是什么 / 361         15.2 同时使用Cocoa Touch和 cocos2d/ 362                 15.2.1 为什么将Cocoa Touch和 cocos2d混合在一起 / 362                 15.2.2 混合Cocoa Touch和 cocos2d的局限性 / 362                 15.2.3 Cocoa Touch和cocos2d 的区别 / 363         15.3 注意:你在cocos2d中的第 一个UIKit视图 / 364         15.4 在cocos2d应用程序中嵌入 UIKit视图 / 367                 15.4.1 在cocos2d视图的前面添加 视图 / 367                 15.4.2 使用UIImage改变 UITextField的皮肤 / 369                 15.4.3 在cocos2d视图的后面 添加视图 / 371                 15.4.4 添加利用Interface Builder 的视图设计 / 377                 15.4.5 自动旋转中的方向问题 .. 380         15.5 在Cocoa Touch应用程序中 嵌入cocos2d视图 / 384                 15.5.1 用cocos2d创建基于视图 的应用程序项目 / 384                 15.5.2 设计混合应用程序的用户 界面 / 387                 15.5.3 启动cocos2d引擎 / 388                 15.5.4 停止和重启cocos2d 引擎 / 390                 15.5.5 改变场景 / 392         15.6 本章小结 / 393

 

第16章 Kobold2D入门 /395         16.1 使用Kobold2D的好处 / 396                 16.1.1 准备使用Kobold2D / 396                 16.1.2 免费使用Kobold2D / 396                 16.1.3 Kobold2D升级简单 / 396                 16.1.4 提供类库服务 / 397                 16.1.5 Kobold2D的跨平台性 .... 397         16.2 Kobold2D的工作空间 / 398         16.3 Hello-Kobold2D模板项目 ..... 399                 16.3.1 HelloWorld项目文件 / 399                 16.3.2 Kobold2D 如何启动应用 程序 / 401                 16.3.3 用iSimulate运行 HelloWorld / 408         16.4 使用KKInput编写的针对 Mac的DoodleDrop / 409         16.5 使用cocos3d进入3D 世界/ 411                 16.5.1 AppDelegate类的变化 .... 411                 16.5.2 cocos3d世界 / 415                 16.5.3 将cocos3d添加到现有 的Kobold2D项目中 / 417         16.6 本章小结 / 418

 

第17章  番外篇 / 419         17.1  其他学习和工作资源 / 419                 17.1.1  寻求帮助 / 420                 17.1.2  从源码项目中受益 / 422                 17.1.3  Cocos2D Podcast / 427                 17.1.4  工具介绍 / 427                 17.1.5  cocos2d参考应用程序 .... 428         17.2  游戏行业 / 430                 17.2.1  与出版商合作 / 431                 17.2.2  寻找自由职业者 / 432                 17.2.3  寻找免费的艺术品 和音频 / 432                 17.2.4  寻找相关工具 / 433                 17.2.5  市场 / 433                 17.2.6  使用更多技术获得更多 收入 / 436         17.3  本章小结 / 440

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!