Cocos2d-x3.x游戏开发之旅 pdf下载pdf下载

Cocos2d-x3.x游戏开发之旅百度网盘pdf下载

作者:
简介:本篇提供书籍《Cocos2d-x3.x游戏开发之旅》百度网盘pdf下载
出版社:电子工业出版社京东自营官方旗舰店
出版时间:2014-10
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容简介

  《Cocos2d-x 3.x游戏开发之旅》是《Cocos2d-x游戏开发之旅》的升级版,修改了Cocos2d-x 2.0版进阶到3.0版后的一些内容,新增了对CocoStudio、UI编辑器、Cocos2d-x 3.x新特性以及网络方面的知识点。主要介绍常用的API使用方式;如何通过官方Demo获取更多关于Cocos2d-x的API使用方法;CocoStudio和Cocos Code IDE基础使用方法;通过2到3个游戏实例介绍Cocos2d-x在实际开发中的应用;手机网络游戏开发入门;在实际的手游开发过程中遇到的问题及解决方法。

  《Cocos2d-x 3.x游戏开发之旅》适合Cocos2d-x初学者或者已经学习了Cocos2d-x 2.0版本想继续使用Cocos2d-x 3.x版本开发游戏的读者,同时也适合刚进入游戏开发行业,希望了解手游开发者在实际开发中遇到的问题及解决方案的读者。

作者简介

  钟迪龙,2010年7月至2011年7月,上海华腾软件有限公司 深圳项目组; 2011年7月2013年8月,深圳创娱网络科技有限公司 Android网游客户端开发;2014年至今,独立开发游戏。CSDN游戏版块版主,知名游戏开发程序员。曾经出版《Cocos2d-x游戏开发之旅》。

目录

第1章 开学典礼

1.1 出场人物介绍

1.2 入学要求——本书适合人群

1.3 这内容有点糟糕——本书风格

1.4 你需要这些技能——学Cocos2d-x需要什么知识

1.5 我们为什么要学Cocos2d-x 3.0

1.6 先给我们的代码找个温馨的家——环境搭建

1.6.1 黑色风暴之VS2013

1.6.2 我的Cocos2d-x版本

1.6.3 我们还需要做一些准备工作

1.6.4 半自动配置环境变量

1.6.5 看看前辈们的毕业设计——运行官方Demo

1.7 广告时间——提供一些学习资源


第2章 不离不弃的HelloWorld

2.1 简单到无法想象——直接运行HelloWorld项目

2.2 新建Cocos2d-x项目遇到的麻烦——成功新建 一个HelloWorld

2.2.1 创建Cocos2d-x 3.0项目

2.3 HelloWorld,没有想象中的简单——简单解析HelloWorld

2.3.1 HelloWorld是如何显示到窗口的

2.3.2 场景其实不是真正的场景

2.4 实例来了

2.4.1 题外话——一个工程多个项目,避免重复编译

2.4.2 创建属于自己的HelloWorld


第3章 我们来学习怎么爬行

3.1 环游世界——场景

3.2 一切的主宰——导演

3.2.1 加载第一个场景

3.2.2 简单的切换场景

3.2.3 包含特效的切换场景

3.2.4 赠送的——推进和弹出场景

3.3 你走你的,我走我的——层

3.4 比对象还要可爱的对象——精灵来了

3.5 我得下命令——菜单

3.6 当个背包客——节点

3.7 Cocos2d-x 3.0新成员——Value、Vector、Map

3.7.1 有容乃大——Value

3.7.2 给我排好队——Vector

3.7.3 对号入座——Map

3.7.4 Value的超能力——整数、浮点数、字符串之间的转换


第4章 我们来学习怎么走路

4.1 吉他独奏《天空之城》——播放声音

4.2 控件篇1——我最爱的九妹和按钮事件

4.2.1 你好,九妹——可拉伸图片

4.2.2 解决使用extensions库时编译报错的问题

4.2.3 九妹和按钮搭配

4.3 可视化的世界——CocoStudio UI编辑器

本节实例源代码为:Chapter4_2_Scale9Sprite

4.3.1 还在用代码写UI?你傻了吧

4.3.2 只需要拖动——UI编辑器初探

4.3.3 更丰富的UI——导入图片资源

4.3.4 更丰富的UI——导出最终文件

4.3.5 展示成果——在游戏中加载UI

4.3.6 我要互动——按钮监听事件

4.4 番外篇——CocoStudio UI编辑器进阶功能

4.4.1 要死、要死、要死了之血量条

4.4.2 我要藏起来之滑动层


第5章 我们来学习怎么打架

5.1 动作讲解1——简简单单的运动

5.1.1 你想去哪,你想走多远——MoveTo和MoveBy

5.1.2 我要减肥——ScaleTo和ScaleBy

5.1.3 卡牌翻转特效——用ScaleTo就可以实现

5.1.4 闪亮登场——Blink

5.2 动作讲解2——更复杂的运动

5.2.1 我要你按照我的路线走——BezierTo和BezierBy

5.2.2 我没让你停,重复动作——RepeatForever

5.2.3 动作一起做,一边走一边转一边跳——Sequence与Spawn

5.3 动作讲解3——动作监听

5.3.1 小若,到家了告诉我一声——动作结束监听

5.3.2 更方便的函数回调——lambda

5.3.3 动作家族族谱

5.4 屏幕触摸事件

5.4.1 屏幕事件初探

5.4.2 单点触摸——截断事件,一个对象的垄断

5.4.3 多点触摸——太弱了,一起上吧


第6章 是时候跑起来了——《LittleRunner》

6.1 这是一个什么游戏

6.2 找个主角回来——创建主角精灵

6.2.1 创建筛选器

6.2.2 创建实体基类

6.2.3 创建主角类

6.2.4 创建游戏场景

6.2.5 修改游戏窗口大小

6.3 其实她不想跑——创建无限滚动地图

6.3.1 每一帧都可以操作——scheduleUpdate初探

6.3.2 翻滚吧,地图——地图无限滚动

6.4 开心的时候——让主角跳起来

6.4.1 Button的应用——创建跳跃按钮

6.4.2 JumpBy的应用——给主角添加跳跃动作

6.5 金钱诱惑——加入怪物

6.5.1 怪物诞生

6.5.2 怪物巢穴——创建怪物管理器

6.5.3 贪婪的主角——怪物碰撞检测

6.5.4 怪物碰不到主角——使用组合的小麻烦

6.5.5 疼了就退后——增加主角受伤时的动作

6.6 监控一切——创建分数标签、血量条等属性对象


第7章 精灵来了第二季

7.1 一大波精灵来袭——大量精灵单独绘制的缺陷

7.1.1 2.0的回忆——大量绘制精灵的尴尬

7.1.2 3.0新功能——Auto-batching

7.1.3 没有完美的事物——Auto-batching“驾驭手册”

7.1.4 谁先上的问题——setGlobalZOrder、setLocalZOrder、setOrderOfArrival

7.1.5 附赠甜品——Auto-batching源码级深入分析

7.2 把相同的精灵装上车——使用SpriteBatchNode优化绘制

7.2.1 一次渲染——SpriteBatchNode的特别之处

7.2.2 什么是纹理——Texture简单解说

7.3 遇到不同的精灵怎么办——TexturePacker工具使用

7.3.1 同一张图片,同一个纹理

7.3.2 将多张图片打包到一起

7.3.3 加载打包后的图片

7.4 是动画,不是动作——Animation

7.4.1 用打包前的图片创建动画

7.4.2 用打包后的图片创建动画

7.4.3 额外赠送——动画创建辅助类


第8章 游戏实例之《跑跑跑》

8.1 更丰富的世界——使用Tiled地图

8.1.1 世界诞生——创建跑步场景

8.1.2 Tiled地图来了——使用Tiled Map Editor创建地图文件

8.1.3 你报错了吗——Tiled Editor常见路径错误

8.2 嘿,培养新人——创建新的主角

8.2.1 主角诞生——创建实体类和主角类

8.2.2 固定主角出生点——对象层的使用

8.2.3 让主角跑——添加主角动画

8.3 更智能的主角——添加角色控制器

8.3.1 创建控制器基类

8.3.2 带着它就能跑——主角移动控制器

8.3.3 焦点是主角——让地图随着主角滚动

8.4 更多的内容

8.4.1 让主角上下移动——三方移动控制器

8.4.2 添加障碍物——Tiled障碍层的使用

8.4.3 添加能吃的物品以及胜利条件


第9章 用多线程做定时器?你疯了——schedule很强大

9.1 我爱单线程——schedule介绍

9.2 每一帧都有我——scheduleUpdate和update

9.3 定时器可以这么做——schedule和回调函数

9.3.1 不调用update函数,调用自己的函数

9.3.2 真正的定时器

9.4 让一切都停下来——unSchedule

9.5 触发器可以这么做——scheduleOnce和回调函数

9.6 准确的计时功能——制作定时器

9.6.1 schedule并没有那么准时——越走越慢的时间

9.6.2 更准确地计时——不会变慢的时间

9.6.3 制作定时炸弹——方便的定时回调功能封装

9.7 额外赠送,我总是很关注我暗恋的女孩——观察者模式

9.7.1 你喜欢谁?我帮你留意——观察者模式扫盲

9.7.2 Cocos2d-x提供的观察者模式工具类——NotificationCenter

9.7.3 addObserver和postNotification函数传递数据的区别

9.7.4 额外赠送——自己实现简单的观察者

……

前言/序言

  从2.0到3.0时代

  我第一次接触Cocos2d-x的时候,它刚好发布了2.0版本,开始从1.x时代跨越到2.x时代。当时我还很庆幸,因为2.x相比1.x做出了很大的改动,而我,无须体验这种改动所带来的“怨念”。

  一年前,我费尽心思所写的《Cocos2d-x游戏开发之旅》出版了,当时还是Cocos2d-x 2.0时代。有读者喜欢它的风格,也有读者讨厌它的唠叨,不管如何,它似乎帮助了不少读者入了Cocos2d-x的门。

  然而,一年以来,Cocos2d-x 3.0版本渐渐浮出水面,我们要迎来3.0时代了,我有幸再一次见证了这种跨越时代的时刻。3.0终将替代2.0,为此,才有了这本《Cocos2d-x 3.x游戏开发之旅》。

  这不是全新的内容

  本书主要目的是把2.0的内容升级为3.0版本,并不是重新写一本书,大部分内容结构是一样的,从目录中就可以看出来。如果说,这是一本全新的、内容完全不一样的书,那我可能就变成了一个专门写书的骗子了。在编写2.0版本的书时,我已经把我几年所积累的知识都花光了。现在仅仅是过了一年时间,我这一年时间的积累,还不足以写成一本全新的书。

  所以,我特意在前言部分把这个情况说清楚,避免和读者之间造成不必要的误会。

  当然,即使仅仅是内容的升级,我也花费了很多心血,一句句代码的检查、修改、优化,一行行文字的调整、修改、新增,并且加入了一些3.0特有的新内容,新增了网络游戏、广告接入、游戏发布等方面的内容。

  我不想再“生”了

  一年前,编写完2.0版本的书时,我累趴了,写书比想象中累多了。那时我就告诉自己,“我这辈子再也不写书了!”,就像一位妈妈刚生完孩子一样,完全没有继续生下一个的勇气了。

  然而,和所有的妈妈一样,时间长了,就忘记了痛苦,只记住了孩子带来的欢乐。我也不知道是什么原因让我决定写这本书,也许是太多读者和我抱怨说之前的书版本太旧了。于是,这本Cocos2d-x 3.x的书就这样诞生了。而我现在,依旧很想说一句,我这辈子再也不写书了!呵呵,也许这是倾尽全力完成一件事情之后,一种兴奋和满意的咆哮。

  那么,希望本书能继续让各位初学者快乐地开启游戏开发之旅。

  本书主要内容

  本书共18章,如果读者没有Cocos2d-x的使用经验,建议从第1章开始阅读。对于有Cocos2d-x基础的读者,我为大家列出了各个章节的主要内容,供读者参考。

  第1章:简单介绍本书写作理念、Cocos2d-x 3.0环境搭建和推荐的一些学习资源。

  第2~3章:介绍Cocos2d-x 3.0的最基本知识、基本结构。

  第4~6章:介绍CocoStudio UI编辑器的使用、动作以及屏幕触摸事件的使用,通过一个简单的游戏实例将前面章节的内容串联起来。

  第7~10章:对Cocos2d-x 3.0更高阶的内容进行介绍,包括渲染效率的提高、动画、TexturePacker图片打包、Tiled地图游戏实例、定时器、消息派发、函数回调、内存管理、数据保存、Csv文件读取、JSON文件读/写。

  第11~12章:介绍Lua和C++通信的知识、有限状态机的基础知识和应用。

  第13章:分享我自己开发的基于Cocos2d-x 3.0的自定义UI模块,详细介绍自定义UI模块的设计思路和实现过程。

  第14~16章:详细讲解本书最后一个游戏实例《卡牌塔防》,该游戏使用了本书介绍的大部分知识。作为本书的最后一个实例,用了三章的篇幅详细地介绍游戏的思路、框架搭建、功能实现的过程。

  第17章:介绍网游游戏开发的基本流程,编写能和服务端进行命令交互的客户端。

  第18章:分享我曾经遇到的错误和解决方案,介绍游戏发布、广告接入、安全等方面的知识。

  与2.0版本一书的不同之处

  也许有些读者已经买过2.0版本的《Cocos2d-x游戏开发之旅》,这里列出本书与2.0版本一书的不同之处,方便读者参考:

  1.所有代码均升级为3.0版本。

  2.删除部分已过时的内容,对原有内容进行升级优化。

  3.增加Value、Vector、Map、3.0触摸机制、lambda函数、Auto-Batching等3.0新特性的内容讲解。

  4.增加JSON、CocoStudio UI编辑器、网络游戏等内容讲解。

  5.增加游戏发布流程、未来趋势、安全处理的内容。

  致谢

  我想,这次我最应该感谢的,是那些认可我的读者,那些能看懂书中幽默风格的读者。是你们让我知道,我不是一个“精神病人”。

  最后,我想感谢我的家人,家人给我的不仅仅是支持,而是一个完整的开心的家庭。并且,我不得不再一次感谢的,就是本书的旁白丁小若,感谢她愿意授予我使用她名字的权限,感谢她给予我幽默的灵感。

  谨以此书献给我可爱的家人和朋友们。

  由于水平有限,书中难免有错误之处,希望读者朋友多指正。也欢迎大家到我的博客就书中的问题与我互动。

  钟迪龙

  2014.08.05