Quick Cocos2d-x 入门指南
文章平均质量分 79
cocos2d-x + lua是流行的移动游戏开发方案,quick针对其中进行了再次封装,开发便捷,在此记录自己的学习过程
wangdi1224
这个作者很懒,什么都没留下…
展开
-
quick-cocos2d-x游戏开发【14】——StateMachine状态机
状态机在quick中是一个亮点,如果我们做一款RPG游戏,一个角色一般会拥有idle,attack,walk,run,death这些状态,如果游戏角色的状态采用分支条件判断的话,会造成非常庞大而难以维护,但一旦使用了状态机这种模式,就会显得简单方便。对于quick中的状态机是如何实现的咱们先不去了解,首先看看如何去使用它。总结起来,如果让一个类拥有状态机,主要有两步:1.创建状态机对象2.初始化状原创 2014-09-20 19:41:15 · 7584 阅读 · 4 评论 -
quick-cocos2d-x游戏开发【13】——节点生命周期事件,帧事件等其他事件
在前面已经学过了“触摸事件”,"触摸捕获事件",“按键事件”,此外,quick还有其他几个事件,前面已经列过有这些,预定义的节点事件:cc.NODE_EVENT - enter, exit 等事件cc.NODE_ENTER_FRAME_EVENT - 帧事件cc.NODE_TOUCH_EVENT - 触摸事件cc.NODE_TOUCH_CAPTURE_EVENT - 捕获触摸事件预定义的层事件:c原创 2014-09-08 20:22:04 · 5954 阅读 · 2 评论 -
quick-cocos2d-x游戏开发【12】——硬件按键事件
在quick中,对于按键事件也进行了重新封装,和node的触摸事件一样,也是通过addNodeEventListener来实现。所谓按键事件,主要是针对于android设备中的返回键“back”和菜单键“menu”的响应,在前面的一篇博文中我也简单提过一次,不过咱们还是系统性的来学习一下。首先清楚预定义的层事件有两个,cc.ACCELERATE_EVENT - 重力感应事件cc.KEYPA原创 2014-09-07 20:42:32 · 4227 阅读 · 2 评论 -
quick-cocos2d-x游戏开发【11】——多点触摸
在前面已经谈过单点触摸的用法了,所以对于多点触摸来说,也是非常简单容易的。多点触摸其拥有event.added,event.removed,event.points这么几个独有参数。event.added 屏幕中增加了一个触点event.removed 屏幕中移除了一个触点event.points 屏幕中全部触点数组结合单点触摸的几个事件,所以多点触摸事件发生时,会有began,added,原创 2014-09-07 14:06:43 · 3987 阅读 · 1 评论 -
quick-cocos2d-x游戏开发【10】——触摸捕获事件 cc.NODE_TOUCH_CAPTURE_EVENT
如果看过sample中touch的代码,你会发现示例中有一个cc.NODE_TOUCH_CAPTURE_EVENT事件,它和cc.NODE_TOUCH_EVENT触摸事件一样,是引擎级别的事件,我们来看看它和触摸事件的区别。触摸捕获事件的优先级要比触摸事件要高,换句话说,触摸捕获事件会比触摸事件先响应,并且有权不分发给触摸事件响应。对于一个完整的捕获+触摸事件,有这么一个流程:原创 2014-08-29 12:00:39 · 6556 阅读 · 0 评论 -
quick-cocos2d-x游戏开发【9】——单点触摸
quick的触摸机制,我想廖大已经在这篇文章里说的很清楚了,我们这些小辈们就是在他的基础上完备一下,说说用法就可以了,嘿嘿。在2.2.3之前的版本(不包括2.2.3),触摸机制和廖大在那篇文章里面的说的一样,添加触摸响应采用addTouchEventListener来完成,不过在此之后,对触摸机制就进行了完全的改写,和cocos2dx 3.0的版本一样,采用更加灵活的CCNode事件分原创 2014-08-29 00:30:56 · 4076 阅读 · 1 评论 -
quick-cocos2d-x游戏开发【8】——动画与动作
动画与动作,在quick中都有对其封装,所以我们还是来看一下吧。总的来说,对于帧动画,quick封装的方法我们可以经常使用,这是非常方便的,下面直接上代码来直观感受下,比如,14张帧图片,采用cocos2d-x lua的方法来写是这样的,local sp = display.newSprite("grossini_dance_01.png", display.cx, display.c原创 2014-08-24 22:58:44 · 7656 阅读 · 0 评论 -
quick-cocos2d-x游戏开发【7】——scheduler 定时器
定时器用的地方还是比较多的,游戏中的逻辑判断很多都是采用每帧执行。quick对于schedule的封装在scheduler这个lua文件中。如果是第一次接触quick的话,可能按照官方的api来写一个定时器被报错,提示schedule是一个nil值,这是因为其他的模块在初始化时都是被加载的,唯独这个scheduler没有载入,所以在使用的时候,第一件事是引入这个模块,local schedul原创 2014-08-19 10:58:14 · 11308 阅读 · 5 评论 -
quick-cocos2d-x游戏开发【6】——制作自定义效果按钮菜单
前面提到的是基本的菜单使用,还是很容易的,不过我们在商业产品中,经常看到的按钮都是非常好看,不光光是图片做得精美,而且动画效果也很棒。Candy Crash都玩过吧,看它们那个按钮,真的像果冻一样,效果确实很赞,所以我们也来做个,当然不是它那个效果,而且点击之后有一个抖动的效果。像这样,好了,开始做个吧,我这个也是搬了一下coinflip中的按钮代码,算是学习一下。创建一个原创 2014-08-17 21:17:22 · 4279 阅读 · 0 评论 -
quick-cocos2d-x游戏开发【5】——创建菜单
菜单也是游戏中不可缺少的元素之一,quick中对于menuItem的封装有两种,一个是图片菜单,一个是文字菜单。一、图片菜单ui.newImageMenuItem(params)可用参数:image: 正常状态的按钮图像imageSelected: 按钮按下时的图像(可选)imageDisabled: 按钮被禁用时的图像(可选)listener: 回调函数tag: 按钮原创 2014-08-14 09:59:38 · 4563 阅读 · 3 评论 -
quick-cocos2d-x游戏开发【4】——添加文本
文本的添加在quick中被封装在ui类中,它可以创建EditBox,菜单以及文本,文本总得来说可以创建TTF和BMFont两种。api对于它的说明很详细,ui.newBMFontLabel(params),参数中text: 要显示的文本font: 字体文件名align: 文字的水平对齐方式(可选)x, y: 坐标(可选)所以我们创建一个文本可以使用这样的代码,f原创 2014-08-12 17:24:57 · 5073 阅读 · 1 评论 -
quick-cocos2d-x游戏开发【3】——display.newSprite创建精灵
游戏嘛,没图片没画面能叫游戏吗,所以我们还是先看用quick的方式怎么创建精灵。quick的api中对精灵的创建讲解得还是很详细,所以创建起来很简单。display.newSprite(filename, x, y, params)filename:精灵文件名x:x位置坐标y:y位置坐标params:表参数(不常用)我们创建的时候可以,为了方便,原创 2014-08-11 10:56:07 · 7407 阅读 · 2 评论 -
quick-cocos2d-x游戏开发【2】——项目结构分析、创建新场景
创建完一个新项目之后,我们可以简单的看一看这个项目的文件组成,有这么一个文件层次结构几个proj.*文件夹就不用说了,是对应的平台的解决方案,res专门存放我们的游戏资源,scripts存放我们的lua代码,sources中有我们熟悉的AppDelegate类,我们主要常用的就两个文件夹,res和scripts(我这不是废话吗)好吧,还是再打开scripts文件夹看下,原创 2014-08-10 13:43:38 · 4512 阅读 · 1 评论 -
quick-cocos2d-x游戏开发【1】——引擎结构总览和创建项目
好吧,我还是忍不住想写点关于quick的学习笔记,确实网上关于它的教程太少太少了,简单把自己的所学所得分享一下,有不对之处还请班门弄斧。首先下载引擎包,触控收购quick之后,现在cocos中文站的主页上就可以下到了,虽然3.0alpha版发布了,还是等beta吧,在这里可以下到最新2.x的版本——2.2.5,好了,以后就暂时先拿这个版本学习,还是从低版本向高版本学习要轻松一些,至少知原创 2014-08-10 11:10:41 · 4114 阅读 · 0 评论