下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
读书 > 游戏开发 >Cocos2d-x > Cocos2d-JS开发之旅——从HTML 5到原生手机游戏

Cocos2d-JS开发之旅——从HTML 5到原生手机游戏

综合评级:★★★★★

定价:79.00

作者:郑高强 著

出版社:电子工业出版社

出版日期:2015年3月

页数:396

字数:554400

ISBN:9787121256080

书籍介绍
本书从简单到复杂逐渐深入介绍Cocos2d-JS,包括HTML5和手机原生游戏两个方面的内容。这些内容融汇了作者多年的工作经验和Cocos2d-JS的亲身使用教训,有助于读者快速掌握游戏开发的方法和避开不必要的麻烦。

  本书以两个游戏为线索,每一章的学习都为最终实现游戏而准备。除了基础的Cocos2d-JS使用方法,本书还会探讨如何调试发布原生手机游戏和另外一些高级话题。

相关课程
目录

第一部分准备篇

第1章Cocos2d-JS介绍

1.1原生手机游戏和HTML5游戏

1.2Cocos2d-JS的前世今生

1.3一次开发,同时完成HTML5和原生游戏

1.4Cocos2d-JS相比Cocos2d-x的优势和劣势

1.5我们要准备些什么基础知识

1.6本书适合人群

1.7我们能学到什么

1.8推荐的学习资源

第2章跑起我们的HelloWorld

2.1环境搭建

2.1.1乞丐版装备——官方SDK和记事本足矣

2.1.2土豪版装备——JS编程三剑客(webStorm+Chrome+Fiddler)

2.1.3旗舰版装备——再来个VisualStudio或Xcode

2.2轻松搞定第一个Cocos2d-JS程序

2.2.1建立第一个程序——HelloWorld

2.2.2打开HelloWorld工程

2.2.3运行HelloWorld

2.3HelloWorld简约而不简单

2.3.1程序的目录结构

2.3.2它是怎么跑起来的

2.4出发前再带上个武器——trace

第一部分总结

第二部分做一个简单的小游戏

第3章Cocos2d-JS的平面世界

3.1Cocos2d世界的经纬度——坐标系

3.2场景(Scene)组成了Cocos2d世界

3.3Cocos2d世界物体的祖宗——节点(Node)

3.4让2D世界层次化——层(Layer)

3.4.1按层管理所有物体

3.4.2把层扩展成各种功能的面板

3.5二维世界的人物——精灵(Sprite)

3.6天外有天——当层和精灵嵌套时怎么设置坐标

3.7导演(Director)指挥一切

3.7.1场景的切换

3.7.2导演可以提供的信息

3.8额外说说Cocos2d-JS的语法

3.8.1JS面向对象和继承

3.8.2有点麻烦的this

第4章让世界来点动静

4.1帧的概念

4.2模仿胶卷电影——逐帧变化

4.3现成的既定动作

4.3.1基本动作

4.3.2放一个连招——组合动作

4.3.3让运动轨迹来多点花样

4.4控制动作

4.4.1停止动作

4.4.2暂停恢复动作

4.4.3监听动作的开始与结束

4.5播放声音

4.5.1背景音乐

4.5.2音效

4.5.3音量

第5章让玩家操纵这个世界

5.1鼠标事件

5.2触摸事件

5.2.1单点触摸

5.2.2多点触摸

5.3键盘事件

5.4重力感应器事件

5.5游戏进入后台恢复显示事件

第6章控制小怪按时出现——定时器

6.1每帧做点什么——scheduleUpdate

6.2scheduleOnce取代熟悉的setTimeout

6.3schedule取代setInterval

6.4取消定时器

6.5暂停恢复定时器

6.6越来越慢的定时器

6.7动手制作不变慢的定时器

第7章游戏界面

7.1纯手工打造

7.1.1按钮(MenuItem)

7.1.2开关按钮(MenuItemToggle)

7.1.3菜单(Menu)

7.1.4文本(LabelTTF)

7.1.5输入框

7.2可视化编辑

7.2.1CocosStudioUI编辑器介绍

7.2.2新建工程

7.2.3UI元素的属性

7.2.4UI元素的树形从属关系

7.2.5导入图片

7.2.6导出成果

7.2.7回归手工——代码中加载UI文件

7.2.8监听UI元素

第8章不能光说不练——小小碰碰糖

8.1功能说明

8.2新建项目

8.3制作糖果

8.4游戏界面

8.5一个新知识——遮罩(ClippingNode)

8.6点击消除

8.7补充糖果

8.8关卡设计

8.9保存进度——如何读写数据

第9章把成果分享到网上

9.1一句命令打包整个程序

9.2文件太大,精简一下

9.3世界上有免费的服务器

9.3.1又当爹又当娘——Github介绍

9.3.2开通免费的个人主页

9.3.3方便的Windows客户端

9.4发布碰碰糖游戏,PC手机都能玩

9.5自定义类库让更新更方便

第二部分总结

第三部分再做一个高大上游戏

第10章走向高大上的必经之路——简单的性能优化

10.1化零为整——SpriteSheet

10.1.1零碎小图的问题

10.1.2使用TexturePacker

10.1.3另一种Sprite初始化方式——SpriteFrame

10.2分批处理——SpriteBatchNode

10.3不要乱丢垃圾——缓存池(pool)

10.4拍一张定妆照——位图缓存(BakeLayer)

第11章让主角不再死板

11.1帧动画(FrameAnimation)

11.2骨骼动画

11.2.1什么是骨骼动画

11.2.2CocosStudio动画编辑器(AnimationEditor)

11.2.3导出骨骼动画

11.2.4在代码中加载骨骼动画

11.2.5更好用的工具——DragonBones

第12章动态的背景

12.1视差滚动背景(ParallaxNode)

12.2实现一个无穷的视差滚动背景

12.3瓦片地图(TiledMap)

12.3.1瓦片地图介绍

12.3.2使用工具:TiledMapEditor

12.3.3在代码中加载瓦片地图

12.4自行实现无限行走的瓦片地图

第13章界面的文字有点丑

13.1高级货位图字体(BMFont)

13.2制作位图字体

13.2.1BMFont

13.2.2更特别的字体

13.3使用位图字体

第14章超炫的效果——粒子系统

14.1粒子系统介绍

14.2Cocos2d-JS的粒子系统

14.3Cocos2d-JS提供的几种现成效果

14.4参数太多手写太累——各种可视化编辑器

14.5在代码中加载可视化编辑的粒子系统

14.6让粒子系统自生自灭

第15章尝试做一个更大的游戏——HungryHero(上篇)

15.1游戏简介

15.2将会用到什么技术

15.3场景列表

15.4超人的设计

15.5食物的设计

15.6障碍物的设计

15.7咖啡和蘑菇的设计

15.8背景的设计

15.9音乐和音效

第16章尝试做一个更大的游戏——HungryHero(下篇)

16.1准备工作

16.1.1代码架构

16.1.2打包SpriteSheet

16.2菜单界面的实现

16.2.1添加界面元素

16.2.2菜单

16.2.3声音按钮

16.2.4给画面添加动感

16.3声音播放的统一管理

16.4关于界面的实现

16.5游戏数据的记录

16.6游戏过程界面的实现

16.6.1游戏UI

16.6.2加入背景

16.6.3结束画面

16.7超人登场

16.7.1超人的帧动画

16.7.2游戏过程场景的框架

16.7.3超人的几种状态

16.7.4超人起飞

16.7.5操控超人

前言
序言

  近两年,手游行业的行业格局风云变幻,市场规模不断升级,竞争愈发激烈,而代表着微端、无端、自由分发的HTML5游戏迅速崛起,势头凶猛,备受瞩目。Cocos2d-JS跨平台游戏引擎具备优秀的HTML5游戏和原生游戏支持能力,左右逢源,让开发者拥有最大的市场机遇。

  Cocos2d-JS是Cocos家族的一个重要分支,无缝融合了Cocos2d-HTML5快速原型能力和Cocos2d-x的原生高性能,简单、易用的API,配合完整工具链支持,让开发更加高效,实现一次编码跨全平台部署在网页和原生应用平台上。

  经过多轮的打磨,Cocos2d-JS已经成熟,值得信赖,市面上已有许多大家耳熟能详的优秀作品就是采用Cocos2d-JS打造的,比如近来上了央视一套广告的经典大作DeNA的《航海王:启航》,上线微信游戏的《仙侠道》,还有边锋的《三国杀传奇》,KooGame的《狂斩三国2》以及畅销的途游棋牌游戏系列。在海外,美国大鱼游戏的《Big Fish Casino》则是长期霸榜的游戏。同时,Cocos2d-JS也是Facebook的官方推荐跨平台游戏引擎,目前Qzone玩吧网页游戏使用最广泛的游戏引擎。

  本书文笔欢快,深入浅出地介绍了Cocos2d-JS游戏开发的基础概念和工作原理,涵盖最新版本Cocos2d-JS v3.x的核心类、瓦片地图、BakeLayer、脚本资源热更新模块、编辑器的入门使用,以及如何跨网页和原生平台进行游戏发布等多个方面。整本书的内容循序渐进,结构完整,配有多个精彩的游戏实例详解和引擎进阶使用,介绍如何一步步做出高大上的游戏,适合入门学习和进阶提升,值得一读,在这里推荐给大家。

  非常感谢郑高强老师带来的这本《Cocos2d-JS开发之旅》,祝愿大家能在HTML5游戏开发和原生游戏开发之旅实现自己的梦想!

  林顺

  Cocos2d-x联合创始人

  前言

  本书特点

  本书特点是每一部分都有很强的目的性——为了实现真实的游戏。某些技术书的内容编排就好像API说明一样,只是简单地把所有技术模块介绍一遍,这样的书跟官方文档没什么差别,读者在阅读这样的书时往往不知所措,不知道学习某一章有什么实际意义,这并不是我喜欢的风格。相对比,在本书里大家学习每一章的时候都会清楚地知道为什么要学习这一章的内容,这样才能更好地理解和掌握知识。

  另外,很多技术图书只会点到即止,不会涉及难点。相反,本书在介绍了基本的Cocos2d- JS开发知识后,还要和大家一起来探讨几个Cocos2d-JS的高级话题。

  本书主要内容

  本书的内容分为五个部分:

  第一部分是准备篇。这部分有两章的内容,第1章介绍Cocos2d-JS的发展过程和现在的市场情况,第2章搭建Cocos2d-JS的开发环境并运行第一个程序——HelloWorld。

  第二部分的目标是做一个简单的小游戏,包括了7章的内容,每一章内容都为小游戏而准备。第3章是关于Cocos2d-JS的平面世界和显示列表,也就是最基础的部分;第4章讲述Cocos2d-JS的动作,如何让一个物体按设定轨迹运动;第5章介绍如何处理玩家的操作,例如鼠标、触摸、键盘和重力感应器;第6章和第7章分别讲解定时器和游戏UI的使用方法。在第8章和第9章中,我们将进行实践,先制作一个碰碰糖游戏,再尝试打包为HTML5游戏发布到互联网上。

  第三部分是迈向高大上的一部分,我们在这一部分将学习更多有趣的功能,让游戏变得更绚丽更吸引人,包括第11章的动画、第12章的动态背景、第13章的位图字体和第14章的粒子系统。另外,为了支持高大上游戏的效率要求,我们还需要学习一些简单的性能优化方法,也就是第10章的内容。最后在第15章和第16章,本书以两章的篇幅同大家一起实现一款较大的游戏——Hungry Hero。

  第四部分是关于原生手机游戏开发的内容,将讲述如何使用Cocos2d-JS制作原生版本的游戏。在发布原生版本游戏的过程中,大家会遇到各种各样的坑,第18章介绍其中的原理和避免踩坑的技巧。

  第五部分是高级篇,我们探讨一些高级话题,包括事件机制、屏幕适配、渲染控制和动态热更新,这些内容都是实际开发中的难点或挑战点。

  版本说明

  在本书编写过程中,Cocos2d-JS的版本不断更新,从最初的v3.0 beta到v3.0,再到v3.4,也许现在已经有更新的版本了。不过,写书的速度还是没跟上Cocos团队,所以只能折中选择了较稳定的v3.1了,这个版本已经比v3.0稳定很多,各种接口在HTML5和JSB方面几乎做到了完美兼容。本书所有内容都以v3.1为准,而大家买此书的时候可能已经有v3.2或v3.4了,也许极少部分接口会出现变化或者有一些本书没有提及的新功能。如果遇到这种情况,请大家不要过于怪责我,就随便“吐槽”一两句好了,另外有时间的话可以发邮件提醒一下我。

  学习建议

  虽然本书提供了全部代码的下载,但是学习一种编程技术最好的方式就是让自己的手指多锻炼。我建议大家在学习每一章内容的时候,都跟着书本的指引,自己尝试建立工程并手工输入相应代码,在一些代码片段之间还可以尝试自己把一些被省略的部分补充完整。只有在运行出错或者效果跟书本描述不一致时,大家才查看本书提供的源代码,这样才是最好的学习方式。

  吐槽和致谢

  若干年以前,我还是研究生的时候曾写过一些国内外的论文,当时觉得写论文真是一个头痛的工作,你得咬文嚼字再咬文嚼字才最后憋出几页纸的文章。过了若干年,在互联网行业写了无数行代码后,我又一次捡起文笔,尝试写一本技术分享的书,才发现原来写书跟写论文是一样的头痛!虽然写书可能没有论文那么字字斟酌,但是在这个过程中,我时时刻刻心理想着一句话:“我可不能误导别人啊。”因此,本书中每一句话,每一段代码,每一个结论,我都得亲自验证确保无误才放到正文中。在这里,不得不“吐槽”一句,写书真累人啊!

  不过,话说回来,我还是挺享受这种传授知识的过程的。在写这本书之前,几年内我在博客洋洋洒洒写了接近200篇文章。回想起来,本书的编写还得感谢我以前的一些经历,这包括大学时代的家教工作和研究生时的助教工作。这两个经历让我尝试了当老师的感觉,深刻理解到学生的思维和理解难处,所以在本书的编写过程中特别注意了讲解的合理性,争取让每个知识点都能零基础的读者理解和接受。

  最后,感谢家人和朋友给我的理解和支持。谨以此书献给我亲爱的家人和铁杆的朋友们!

  由于水平有限,难免在书本内容中出现谬误,请大家不吝赐教,欢迎发邮件给我,或者到我的博客留言。

  郑高强

  2015年1月4日

热门图书
推荐新闻
技术文库
论坛推荐