《Cocos2d-x游戏开发实战精解》[97M]百度网盘|pdf下载|亲测有效
《Cocos2d-x游戏开发实战精解》[97M]百度网盘|pdf下载|亲测有效

Cocos2d-x游戏开发实战精解 pdf下载

出版社 清华大学出版社
出版年 2016-02
页数 390页
装帧 精装
评分 9.3(豆瓣)
8.99¥ 10.99¥

内容简介

本篇主要提供Cocos2d-x游戏开发实战精解电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

编辑推荐

适读人群 :零基础游戏开发人员、游戏开发爱好者、在校学生
  64个游戏实例、5个完整的游戏项目案例、赠送232分钟高清配套教学视频
  详解Cocos2d-x从项目创建、配置到开发的全过程,全面展示各组件的使用方法
  涵盖Cocos2d-x游戏开发的基础知识、技能提升、设计模式应用及游戏案例实战
  不涉及过于高深的理论,而是通过实例展示如何做,很适合零基础读者快速入门
  通过64个实例与5个案例,详解Cocos2d-x中各个模块的用法和常见游戏的实现思路
  详解从零基础到独立开发游戏的整个过程,并探讨游戏开发中设计模式的应用
  实现5个完整的游戏项目案例,让读者体验实际的游戏开发过程,提高实战水平
  64个游戏实例
  音效实战:钢琴
  交互实战:游戏摇杆
  动作实战:人物行走
  定时器实战:回合制游戏战斗
  Box2D实战:在平面上打台球
  骨骼动画实战:运动的火柴人
  ……
  5个完整的游戏项目案例
  2048游戏实战
  连连看游戏实战
  Popstar游戏实战
  纵版射击游戏实战
  纸牌游戏实战

海报

内容简介

  本书以实例为基础,通过简单的例子来介绍Cocos2d-x中各个模块的使用方法和一些常见游戏的实现思路。书中详细介绍从零基础到能够独立开发简单游戏的整个过程,同时探讨游戏开发中设计模式的应用。另外,作者为书中的重点内容录制了一些教学视频,以便于读者更加高效、直观地学习。本书共19章,分为4篇。第1篇为开发前的环境搭建,主要介绍Cocos2d-x的背景知识及开发环境的搭建。第2篇为Cocos2d-x基础铺垫,主要介绍Cocos2d-x中的基本UI、对用户操作的响应、地图系统、物理引擎、粒子系统及存储和网络等方面的知识。第3篇为Cocos2d-x技能提升,属于进阶知识,主要介绍如何使用额外的控件、如何使用CocosStudio及设计模式的相关内容。第4篇为Cocos2d-x游戏开发案例实战,主要通过几个游戏案例介绍如何利用Cocos2d-x开发游戏应用。
  本书内容全面,实用性强,尤其适合在校学生或零基础游戏开发的爱好者阅读。本书基本不涉及过于高深的理论,书中主要是通过实例来展示怎么做,非常适合基础薄弱的读者入门。
  本书精华内容
  初识Cocos2d-x
  Cocos2d-x基础知识学习
  在屏幕上显示内容
  实现交互功能
  让人物动起来
  定时器的原理及使用
  地图系统的使用
  Cocos2d-x中的粒子系统
  在Cocos2d-x中使用物理引擎
  存储和网络
  高级UI控件
  学习使用CocosStudio
  Cocos2d-x中的设计模式
  2048游戏实战
  连连看游戏实战
  Popstar游戏实战
  纵版射击游戏实战
  纸牌游戏实战
  最后的一点补充

作者简介

  欧桐桐,毕业于大连海事大学信息管理与信息系统专业。熟悉各种主流的游戏开发框架,尤其热爱Cocos2d-x。曾经针对PC网络游戏开发了多款用于竞技的模拟器(如召唤兽打书模拟器、人物加点模拟器等),深受广大网络游戏玩家的喜爱。作为一名资深的网络游戏玩家,善于利用自己的开发经验发现网络游戏脚本背后的秘密。

目录

第1篇 开始前的环境搭建
第1章 初识Cocos2d-x
1.1 我是怎样遇到Cocos2d-x的
1.1.1 Cocos2d的历史
1.1.2 简单介绍一下Cocos2d-x
1.1.3 笔者的个人感受
1.2 开始前的准备
1.2.1 Visual Studio 2013的安装
1.2.2 Cocos集成开发环境的安装
1.3 安卓开发环境的搭建
1.3.1 JDK的安装
1.3.2 ADT的使用
1.3.3 如何在真机上运行Cocos2d-x程序
1.3.4 多个类的情况
1.4 关于本书的一些约定
1.5 小结
第2篇 Cocos2d-x基础铺垫
第2章 Cocos2d-x基础知识学习
2.1 在Cocos2d-x中创建一个新的场景
2.2 让场景显示出来
2.3 Cocos2d-x中的一些概念
2.3.1 导演
2.3.2 节点
2.3.3 场景
2.3.4 图层
2.3.5 精灵
2.4 总结
第3章 在屏幕上显示内容
3.1 在Cocos2d-x中显示一行文字
3.2 在Cocos2d-x中显示图像
3.3 在Cocos2d-x中使用菜单
3.4 Cocos2d-x中屏幕适配的原理
3.5 在Cocos2d-x中播放声音
3.6 实战:一个简单的钢琴
3.7 小结
第4章 实现交互的功能
4.1 单点触摸的纸牌游戏
4.2 多点触摸的羊驼游戏
4.3 鼠标和键盘的加入
4.4 在Cocos2d-x中使用加速度传感器
4.5 实战:在Cocos2d-x中实现游戏摇杆
4.6 小结
第5章 让人物动起来
5.1 让精灵进行简单的动作
5.2 在Cocos2d-x中实现更加复杂的动作
5.3 在Cocos2d-x中实现动作的监听
5.4 让主角跑起来
5.5 用打包后的图片创建动画
5.6 实战:利用动画实现人物行走
5.7 小结
第6章 定时器的原理及使用
6.1 定时器的基本使用
6.2 定时器的缺陷以及改进
6.3 定时器的注册与取消
6.4 使用定时器实现触发器
6.5 实战:利用定时器优化实现人物行走的效果
6.6 实战:实现回合制游戏战斗效果
6.7 小结
第7章 地图系统的使用
7.1 使用图片作为地图
7.1.1 实现人物简单行走
7.1.2 使用分层的方式来表示路径
7.1.3 实现人物的移动
7.1.4 一点补充
7.2 瓦片地图与地图编辑器
7.2.1 获得瓦片地图
7.2.2 将地图加载到Cocos2d-x场景中
7.2.3 在项目中使用瓦片地图
7.3 障碍物的获取
7.4 简单介绍一下算法
7.4.1 深度优先和广度优先算法
7.4.2 地图的化简
7.4.3 最短路径算法
7.4.4 A星算法
7.5 小结
第8章 Cocos2d-x中的粒子系统
8.1 什么是粒子系统
8.2 粒子系统的使用
8.3 使用粒子系统创建火焰
8.4 使用粒子编辑器
8.5 小结
第9章 在Cocos2d-x中使用物理引擎
9.1 什么是物理引擎
9.2 物理引擎中常用的概念
9.2.1 世界
9.2.2 刚体
9.2.3 形状
9.2.4 夹具
9.2.5 关节
9.2.6 碰撞
9.3 在Cocos2d-x中使用物理引擎
9.4 玩家实现对刚体的操纵
9.5 Box2D中关于倍数的设定
9.6 向屏幕中加入多个小球
9.7 小结
第10章 存储和网络
10.1 Cocos2d-x中本地信息的存储
10.2 Cocos2d-x中的文件系统
10.3 Cocos2d-x中弱联网技术的使用
10.3.1 通过HTTP协议获取在线信息
10.3.2 向服务端发送请求
10.4 Cocos2d-x中XML文件的解析
10.5 小结
第3篇 Cocos2d-x技能提升
第11章 高级UI控件
11.1 九宫格是个什么东西
11.1.1 九宫格简介
11.1.2 实现九宫格的效果
11.1.3 神奇的Scale9Sprite
11.2 Scale9Sprite在按钮中的应用
11.3 在Cocos2d-x中使用滑动条
11.3.1 自定义SlideBar实现滑动条
11.3.2 使用类ControlSlider来实现滑动条的效果
11.4 另一种形式的进度条
11.5 在游戏中使用开关
11.6 小结
第12章 学习使用Cocos Studio
12.1 Cocos Studio的使用
12.1.1 Cocos Studio的作用
12.1.2 Cocos Studio中各部分的功能
12.1.3 实战:利用Cocos Studio实现登录APP
12.2 在Cocos Studio中使用自定义控件
12.3 对Cocos Studio制作的按钮进行响应
12.4 使用骨骼编辑器制作动画
12.4.1 下载谷歌的骨骼动画编辑器
12.4.2 实战:使用骨骼动画编辑器实现运动的火柴人
12.5 小结
第13章 Cocos2d-x中的设计模式
13.1 什么是设计模式
13.2 设计模式的作用是什么
13.3 Cocos2d-x中的设计模式
13.3.1 单例模式
13.3.2 二段构建模式
13.3.3 工厂模式
13.3.4 外观模式
13.3.5 观察者模式
13.3.6 中介者模式
13.4 Cocos2d-x中的防御式编程
13.5 小结
第4篇 Cocos2d-x游戏开发案例实战
第14章 2048游戏实例
14.1 2048游戏概述
14.2 游戏手势的识别
14.3 卡片类的定义和实现
14.4 卡片消除效果的实现
14.5 游戏界面的美化
14.5.1 记分牌类的定义
14.5.2 卡片背景的改变
14.5.3 卡片颜色的设定
14.5.4 卡片数值的显示
14.6 分数的计算
14.7 小结
第15章 连连看游戏实战
15.1 游戏分析
15.2 瓦片地图的制作与方块的显示
15.3 游戏中方块的定义与实现
15.4 用户操作的逻辑判断
15.5 方块连通性的判断
15.5.1 没有拐点的直线
15.5.2 一个拐点条件下连通性的判断
15.5.3 两个拐点情况的判断
15.5.4 两点连通性的判断
15.6 倒计时条的实现
15.7 道具按钮的加入
15.8 界面的优化
15.9 关卡的选择
15.10 小结
第16章 实战Popstar
16.1 消除类游戏简介
16.2 星星的定义和显示
16.3 玩家单击事件的获取
16.4 使用广度优先算法使星星消去
16.4.1 消去四周的星星
16.4.2 将连通的星星全部消去
16.5 让星星真正消去
16.5.1 让星星下落
16.5.2 星星的平移
16.5.3 一个小bug
16.6 游戏逻辑的判断
16.7 游戏开始特效与界面的修改
16.8 小结
第17章 实战纵版射击游戏
17.1 纵版射击游戏简介
17.2 背景滚动的实现
17.3 飞机类的实现
17.4 “皮卡丘”跟随玩家操纵
17.5 子弹的发射
17.6 敌人的创建
17.7 不断地创建敌机
17.8 敌机发射子弹
17.9 碰撞检测与敌机的爆炸
17.10 小结
第18章 简单的纸牌游戏
18.1 项目简介
18.2 定义一张纸牌
18.3 洗牌和发牌
18.3.1 纸牌序列的生成
18.3.2 纸牌的分发过程
18.4 “玩家类”的定义和实现
18.5 玩家和电脑出牌的实现
18.5.1 玩家出牌的实现
18.5.2 电脑出牌的实现
18.5.3 代码的封装
18.6 玩家与电脑轮流出牌的实现
18.7 实现让玩家按照规则出牌
18.8 实现电脑按照游戏规则选牌和出牌
18.9 最后来谈谈人工智能与自动机
18.9.1 自动机
18.9.2 基于深度遍历的方法
18.9.3 基于策略的方法
18.9.4 基于大数据的方法
18.10 小结
第19章 最后的一点补充
19.1 游戏素材的获取
19.2 游戏题材的选择
19.3 遇到问题怎么办
19.4 游戏如何推广
19.5 小结

精彩书摘

  第1章初识Cocos2d-x
  Cocos2d-x是由Cocos2d移植而来的一款跨平台2D游戏开发引擎,在最近几年创造出了不少非常流行的游戏。使用Cocos2d-x能够很容易实现在iOS、WindowsPhone、Android等平台下都可以运行的2D游戏。本章将为今后学习Cocos2d-x做一个学习前的准备,主要是来了解Cocos2d-x的一些基本情况以及Cocos2d-x开发环境的搭建。
  除此之外,本章还将对后续书中的代码以及源文件等做出约定和说明,本章的主要知识点有:
  Cocos2d-x是什么,它与Cocos2d是什么关系。
  怎样在Windows下搭建Cocos2d-x开发环境。
  怎样将游戏移植到安卓系统中。
  本书的一些使用方法以及约定。
  1.1我是怎样遇到Cocos2d-x的
  对于一般开发者来说,游戏开发应该属于很高级的东西了,因为不管是桌面应用还是移动APP,最初入门时都可以直接使用一些现成的控件。Web开发就更不用说了,几天的HTML基础加上各种现成的源码,堆出一个非常华丽的界面是一件非常容易的事情。目前信息高度发达,不管是直接买书还是利用网上的教程,没有基础的人都可以非常轻松地构建出自己的APP,但是游戏开发就又是另一回事了。
  首先,游戏要通过图像来展示,这就注定了不可能有太多现成的控件能够直接使用。
  其次,游戏使用的算法逻辑要比一般APP中单纯的显示内容要复杂得多(当然只是说新闻浏览之类的简单APP),这就说明想要开发游戏,起码要有一定的算法基础。
  以上两点似乎就注定了游戏开发在一般人眼中是一件非常“高大上”的事情,对于开发者来说是这样的,对于“外行”来说更是如此,因为现如今是一个看“脸”的世界。即使是一个不懂开发的人,也会觉得游戏开发是非常厉害的,因为他能够从屏幕的画面上看出这是什么。即使对面某程序员用XXX不知名的高级算法实现了可以预测未来改变世界的不知名算法。对于旁观者来说,没用的,这不过是一大坨没有意义的黑框框而已。
  笔者当年正是遭受过这样的一次鄙视之后发愤图强,为了面子立志要做一个能让所有人都“看得到”的东西。但是毕竟隔行如隔山,照着教程用C#做了个类似连连看、五子棋这样简单的小游戏之后就不知道该如何继续了。
  后来在贴吧看到有人说用Python学习做游戏比较方便,于是果断开始了学习Python的道路。花了一晚上时间了解了Python的基本语法之后,我才了解到一个真相:并不是Python这种语言适合开发游戏,而是在Python下有一个用于游戏开发的插件叫做LosCocos,它能让新手快速地实现一些2D游戏的开发。
  在我知道真相的时刻,实际上Cocos2d已经发展得非常壮大了,已经有了Cocos2d-iPhone、Cocos2d-Windows等不同的版本,如图1-1就是Cocos2d的主要版本以及它的分支。其中本书主要介绍的就是Cocos2d-x在Windows环境下的开发。而一般所说的Cocos2d大多是指Cocos2d在Mac平台下的开发(开发的是适用于iOS以及安卓平台的APP),也有少部分是用Cocos2d直接代替了Cocos2d-x,但是它们的代码大多数时候是可以通用的,因此不需要对此过多在意。
  图1-1Cocos2d的各个版本及分支
  1.1.1Cocos2d的历史
  这里容笔者先小小地跑一下题,稍微回顾回顾Cocos2d的历史。1973年在阿根廷,一个叫做RicardoQuesada的小孩诞生了。他暂时还不知道自己今后所肩负的使命,而是将整个童年都用来进行各种娱乐活动。直到他12岁时,母亲给他买了一台电脑,他用这台电脑学习编程语言开始制作一些简单的小游戏,然后在大学选择了计算机专业。
  2005年,Ricardo萌生了一个“一星期编写一款游戏”的想法,在2005~2007两年间,他制作了许多的游戏。
  终于在2008年,他在阿根廷的LosCocos决定对之前所制作的游戏进行一次整合,于是就出现了一款基于Python的游戏引擎LosCocos。一个月后,LosCocos发布了第一个版本,其名称也变成了被人们所熟知的Cocos2d。
  当时正值乔布斯在努力推广iPhone平台的游戏开发,Ricardo恰到好处地捕捉到了这一机遇,开始与iPhone平台接轨,于是就有了Cocos2d-iPhone版本出现。
  而现在所说的Cocos2d-x则是由触控科技在2012年以来不断提供财力支持,由原本的Mac平台移植过来的。Cocos2d-x包括了Cocos2d-x、Cocos2d-js以及CocosStudio等一系列产品。同时该公司也开发了一系列基于Cocos2d-x的游戏产品,如图1-2所示。
  图1-2触控科技官网所展示的基于Cocos2d-x的游戏产品
  在表1-1中展示了目前Cocos2d家族的主要版本以及支持平台。
  表1-1Cocos2d各个版本以及支持平台
  分支引擎使用语言支持平台
  Cocos2dPython桌面操作系统
  Cocos2d-iPhoneObjective-C、JavaScriptiOS
  Cocos2d-xC++、Lua、JavaScriptWindows、Android、WP等多种平台
  Cocos2d-html5JavaScript支持HTML5的浏览器
  ShinyCocosRubyiOS
  Cocos2d-WindowsC++WindowsXP/7
  Cocos2d-androidJavaAndroid
  Cocos2d-android1JavaAndroid
  Cocos2d-xnaC#MicrosoftandMonoGameplatforms
  Cocos2d-jsJavaScript支持HTML5的浏览器
  Cocos-netC#Mono-supported平台
  Cocos3dObjective-CiOS
  从表中不难看出,Cocos2d是非常强大的,尤其是Cocos2d-x和CocosStudio集成了许多便于开发者开发的编辑器等工具,用起来更是十分方便。
  1.1.2简单介绍一下Cocos2d-x
  刚刚说过,当前Cocos2d-x是由触控科技出资进行移植和维护的。之前的Cocos2d需要在Mac环境下进行开发,这对许多初学者来说是一个很大的瓶颈,因为许多开发者都是从业余爱好开始一边摸索一边真正走向游戏开发的道路的。为了简单的爱好而热血冲动买一台Mac电脑显然是有些太奢侈了,而使用Cocos2d-x则可以在VisualStudio中开发,而且最新版本的Cocos集成开发环境也让开发者在配置时方便了许多,这大大降低了开发者的门槛。而在Cocos2d引擎中文官网中所提供的资料也比较详细和全面,因此游戏开发入门人员上手是比较容易的。
  ?提示:Cocos2d-x由国人维护正是它的一大优势,因为不管是查找资料还是在应用方法上,都会比较贴近我们日常的使用习惯。
  经过一段时间的发展,Cocos2d-x已经成为国内游戏开发者的首选,笔者记得曾经在QQ群里看到某前辈说过的一句话:“同样3个月,使用Unity3D能够了解皮毛算是很有天分了,而如果还不能用Cocos2d-x开发完整的游戏,说明你真的不适合做程序员”。这也从一个侧面反映了Cocos2d-x能够迅速发展的原因。
  目前,已经有许多令开发者和玩家都耳熟能详的游戏在Cocos2d-x下被创造了出来,比如《捕鱼达人》《地铁总动员》《我叫MT》等。后来由于它的发展实在是太迅速了,几乎可以与原有的Cocos2d分庭抗礼了,于是Cocos2d-x有了它自己的logo,如图1-3所示。
  图1-3Cocos2d(左)与Cocos2d-x(右)的logo对比
  Cocos2d-x主要包括以下几项内容:
  流程控制:管理游戏在不同场景之间的切换。
  精灵:用于简单地显示游戏角色、物体等内容。
  动作和特效:使精灵能够呈现出各种不同的行为,以及旋转、缩放等。
  地图系统:包括了2D平面地图以及45度角的2D地图系统。
  菜单和文本渲染:用于显示游戏中的文字等内容。
  基于OpenGL的硬件加速:用于保证游戏能够流畅运行。
  从以上内容可以看到,Cocos2d-x(Cocos2d也是类似的)看起来并不是一款游戏引擎,而是一款专注于渲染对象的图形渲染引擎。但实际上它确确实实是一款完整的游戏引擎,这主要是因为除了它本身的内容之外,在Cocos集成开发环境中还包括了用于实现骨骼动画、控件设计等功能的CocosStudio、CocosBuilder,以及用于模拟现实世界的Box2d等物理引擎。这样一来它几乎就是全能的了。
  1.1.3笔者的个人感受
  跑题归来,笔者可以继续表达自己的感受了,那就是虽然使用了Cocos2d-x之后,想要实现一款游戏依然要自己对需要的类进行设计,由于Cocos2d中对于各种常用类的设计已经比较完美了,只要选对了方法并不需要花费太多的时间。而且基本不需要关注太多底层(比如图形渲染方面)的内容,这对于新手来说真是太好了。
  而且Cocos2d-x本身就支持Windows平台,所以即使是为安卓等平台开发的程序也不需要一遍一遍地上传到真机,或者是在卡得让人难以忍受的虚拟机上调试。除此之外,笔者固执地认为VisualStudio是世界上最方便的IDE,没有之一。无论是在流畅度、UI界面还是其本身提供的代码提示等功能上,微软帝国的实力都是有目共睹的,这也为笔者能够沿着这条Cocos2d之路一直坚持下来提供了不少帮助。
  图1-4展示了不少使用Cocos2d-x开发的游戏,这些游戏都可以拿来模仿和学习,这是学习游戏开发时一个非常好的方法。
  图1-4使用Cocos2d-x开发的游戏
  1.2开始前的准备
  相比于一些理论性的学习,想要学习某个框架的使用实际上是更偏向于应用层面的,也就是怎样用。因此在学习Cocos2d-x时,实践是非常重要的。本节将开始学习如何在Windows下搭建Cocos2d-x的开发环境。
  1.2.1VisualStudio2013的安装
  使用Cocos2d-x进行开发,可以使用基于Eclipse的IDE,也可以使用VisualStudio,自从3.x版本之后,Cocos2d-x就不再对VisualStudio2010提供支持,因此这里选择安装VisualStudio2013。
  (1)在百度搜索MSDN即可找到一个名叫“我告诉你”的网站(网址为http://www.itellyou.cn/)。可以在这里下载需要的VisualStudio或者是Windows等其他由微软提供的软件。下载位置如图1-5所示。
  图1-5在“我告诉你”下载VisualStudio2013的镜像
  ?提示:MSDN(全称:MicrosoftDeveloperNetwork)是微软官方提供给付费订阅户的Microsoft资源下载平台,非付费用户是无法在这里下载软件的。而上文中给出的网站实际上是国内网游公司为了帮助国内用户摆脱需要付费的窘境而制作的一个镜像站。虽然看起来很像是山寨了微软,会给知道真相的网友造成一种被欺骗了的愤怒感,但是可以保证的是该网站上下载的软件均是安全可用的。
  (2)下载之后,将其解压后就可以直接安装,也可以将其刻录成光盘或者使用虚拟光驱等进行安装。开始安装后出现如图1-6所示的界面。选择默认安装路径,然后选中“我同意许可条款和隐私策略”复选框,单击“下一步”按钮继续安装。
  (3)之后看到如图1-7所示的界面,可以在其中选中要安装的项目,本次安装只要选择默认选项就可以了,然后单击“安装”按钮继续安装。之后就会在如图1-8所示的界面中等待若干时间,界面上将会显示当前的安装过程,直到出现如图1-9所示的界面就表示安装完成了,可以单击“启动”按钮开始运行VisualStudio2013。
  在第一次使用VisualStudio2013时,会有对话框提示选择界面风格,包括了蓝色、浅色、深色3种颜色风格可选。如果事后不满意还可以在“工具”|“选项”中重新选择,如图1-10所示。
  图1-6开始安装VisualStudio2013图1-7选中将要安装的项目
  ?提示:按照笔者个人感觉,深色主体在视觉效果上显然是要酷炫一些,但是如果光线比较暗的时候可能会令人比较疲劳,而浅色主题就能相对地缓解这一现象。蓝色主题可以在加班时与浅色主题以一定的时间间隔轮换使用,能够起到“欺骗自己”减轻疲劳感的作用。
  图1-8等待安装完成图1-9安装完成
  图1-10选择VisualStudio2013的界面颜色风格
  1.2.2Cocos集成开发环境的安装
  原本的Cocos2d-x中,开发环境的配置是比较麻烦的,其中2.x版本和1.x版本由于直接集成在VisualStudio2010中,因此需要进行许多配置。而早期的3.x版本干脆要求用命令行来生成项目就更加不方便了。随着Cocos引擎的发布,这一切不再麻烦了。可以非常傻瓜化地获取需要的软件,然后按照指引,只需要简单地配置就能够实现Cocos2d-x开发环境的搭建。
  (1)首先要到Cocos2d引擎中文官网去下载需要的Cocos引擎安装包,如图1-11所示。图中所示页面的地址为:http://cn.Cocos2d-x.org/download/。
  (2)选择下载v2.2.5ForWin版本进行安装,双击后看到如图1-12所示的界面。单击“下一步”按钮就会进入到如图1-13所示的界面,保持默认路径不变,再次单击“下一步”按钮,之后会停在图1-14所示的界面,其中进度条会显示安装进度。
  (3)默默的等待进度条中的绿色占满整个进度条,然后就会显示如图1-15所示的界面。此时标志着安装完成。这时就已经可以试着单击“完成”按钮运行一下看看了。运行之后就会看到如图1-16所示的界面。其中左侧有“项目”、“示例”、“教程”、“商店”、“下载”、“反馈”共6个选项卡。默认停留在“项目”选项卡上,通过它可以创建新的项目或者是资源等。
  “示例”中包含了一些使用Cocos引擎设计和实现控件或者界面的实例。
  “教程”则更侧重于对实例进行过程的讲解。
  “商店”中目前只提供了Cocos2d-x开发中需要的其他软件(如JDK等),当然将来也有可能会有一些收费的控件等。
  “下载”则可以让用户快速地找到通过“商店”所下载的软件。
  “反馈”功能则可以提交一些使用中的bug或者意见等。
  ?提示:实际上Cocos引擎包含了一整套编辑器,因此除了生成完整的项目,还可以用来创建某些控件所用到的资源,比如按钮、选项卡等。
  图1-11下载Cocos引擎
  图1-12开始安装Cocos引擎
  图1-13选择默认安装路径
  图1-14显示安装进度
  图1-15安装完成
  图1-16运行Cocos引擎之后的界面
  (4)这时可以试着创建一个新的项目了,但是正常情况下应该会出现如图1-17所示的结果。那么这个框架就可以在“商店”选项卡中进行下载。在“商店”选项卡中找到图1-18中所标出的项目,单击“立即下载”按钮就可以在图1-19所示的对话框中看到下载进度。
  图1-17没有安装Cocos2d-x引擎框架
  图1-18在商店中找到CocosFramework
  图1-19下载CocosFramework
  (5)下载完成之后就可以直接单击“安装”按钮进行安装,如图1-20所示。
  图1-20下载完成后单击“安装”按钮
  (6)之后就可以保持默认安装目录,一直单击“下一步”按钮直到安装完成。这时就可以在“项目”选项卡中创建一个新的项目,如图1-21所示。
  (7)选择创建一个空白完整项目,单击“下一步”按钮,在新出现的对话框中填写项目信息,如图1-22所示。单击“完成”按钮后,系统将会自动打开CocosStudio并将新创建的项目载入。现在暂时还不需要管它,直接关闭就可以了。然后找到新建项目的目录下,有一个文件夹名叫proj.win32。打开它,选中其中一个文件CocosProject.sln,双击会直接在VisualStudio中打开,如图1-23所示。
  (8)在VisualStudio中单击“本地Windows调试器”链接,如图1-24所示,就会启动如图1-25所示的程序界面。可见虽然是空白项目,但是里面还是带着一点内容的。不过这些暂时不需要在意。左下角的数字和字母是用来显示当前帧数的,这些都会在后面的章节讲解。
  到此为止,最起码已经可以开始动手开发Cocos2d-x游戏了,就算无法移植到移动端,只是在PC上运行一下无疑也是一件非常酷炫的事情(至少在外人眼里一定是这样的)。
  图1-21创建一个新的项目
  图1-22填写新建项目信息
  图1-23打开CocosProject.sln
  图1-24本地Windows调试器
  图1-25启动默认的Cocos2d-x项目
  ……

前言/序言

  这是一个充满机遇的世界。除了战争,社会从来没有像今天这样能够通过某种方式实现人生的逆转。这种现象的根本原因在于移动互联网的发展和全社会对此的高度关注。然而,面对如此多的机遇,传统的APP市场开始趋于饱和,各个细分领域也大多被瓜分完毕。想要实现逆袭,最简单的方法是寻找一个相对更加“空白”的领域。
  游戏就是移动APP市场中的那个空白。然而一提起游戏开发,人们首先想到的就是困难。这是一定的。毕竟对于不了解游戏开发的读者来说,要做出复杂的游戏效果是一件非常牛的事情。即使可以借助于某些现成的游戏引擎,想要入门也可能至少需要半年。然而Cocos2d-x的出现改变了这一现状。有人说过,如果你学习某引擎三年能够入门,那么就非常不错了。但如果你学习Cocos2d-x三个月还不能独立开发游戏,那说明你真的不适合这行。其实这也充分说明了Cocos2d-x的简单。
  确实,使用Cocos2d-x可以让开发者只需通过很短时间的学习,就能够开发出不错的游戏。目前市面上适合初学者的教材还是较少,大多数都瞅准了框架、引擎这一角度来写,让初学者云里雾里。本书则完全放弃了应有的理论深度,完全从实例出发,让读者熟悉Cocos2d-x中各个模块的使用方法。而对于深层次的东西相信读者经过一定的锻炼,有了需求时,自然会去深入探究了。因此,这是一本为向往游戏开发的零基础学习者量身定制的Cocos2d-x教程。
  本书的特色
  1.包含Cocos2d-x中各个模块的介绍及经典游戏案例
  本书包含了对Cocos2d-x中大部分模块使用方法的介绍,并配有相应的实例,例如UI控件、地图和粒子系统等都配有分析和实例。另外,书中还分享了笔者自己在没有这些模块时如何实现这些功能的思路,可以让读者有一个清晰的开发思维。
  2.分享技术的来龙去脉
  对于一些模块,如粒子系统、地图系统、物理引擎及一些高级UI控件,由于理解起来可能会比较困难,因此笔者采用一种螺旋上升的方式进行介绍,完整地展现出每种游戏设计的思路。
  3.介绍了游戏案例开发的详细过程
  本书第4篇所介绍的游戏案例,笔者都尽量按照自己开发的顺序来进行,尽量符合“零基础”这一特点,抛弃了对于新手而言可能会看得一头雾水的架构和UML等内容,完全依靠代码和分析来展现自己的思路,使读者容易看懂。
  4.对重点内容录制了配套教学视频
  为了便于读者更加高效、直观地学习本书内容,作者对书中的重点内容录制了一些配套教学视频。读者可以结合这些教学视频进行学习,将会取得更好的学习效果。
  本书的知识体系
  第1篇 开始前的环境搭建(第1章)
  本篇介绍了Cocos2d-x的基础知识及如何搭建Cocos2d-x开发环境,并介绍了游戏开发中的一些常用的概念,如节点、场景和精灵等,方便后续章节来的学习。
  第2篇 Cocos2d-x基础铺垫(第2~10章)
  本篇详细介绍了Cocos2d-x中各个常用模块的使用方法,并给出了具体实例。主要内容包括UI控件、用户交互、动画、定时器、地图系统、粒子系统和物理引擎等。本篇还给出了一些在实际游戏开发中使用的经典模块(如虚拟摇杆)及人物在地图中行走的效果等。
  第3篇 Cocos2d-x技能提升(第11~13章)
  本篇是对第2篇内容的补充与提高,通过介绍网络、高级控件、设计模式及Cocos Studio的使用,让读者掌握一些能够提高开发效率的方法。
  第4篇 Cocos2d-x游戏开发案例实战(第14~19章)
  本篇介绍了2048、连连看、Popstar、打飞机和纸牌5个游戏的开发过程,带领读者学习游戏开发的思路,以便将前面介绍过的内容连贯起来。本篇最后还介绍了笔者在游戏开发中的一些经验和感悟。
  适合阅读本书的读者
  零基础学Cocos2d-x游戏开发的人员;
  想学习游戏开发的程序员;
  有毕业设计或参加某些APP设计竞赛的在校学生;
  希望毕业后能进入游戏行业的计算机专业学生;
  开设游戏开发课程的大中专院校的师生;
  希望能够低成本获取游戏APP的个人开发者。
  本书配套资源获取方式
  本书涉及的实例源文件及配套教学视频等相关资源需要读者自行下载。请登录清华大学出版社的网站(http://www.tup.com.cn),搜索到本书页面,然后在“资源下载”模块中的“网络资源”处下载。
  若读者在阅读本书时发现任何疏漏,希望能及时反馈给我们,以便及时更正。联系我们请发邮件至bookservice2008@163.com。
  最后祝各位读者读书快乐,学习进步!
  编者