执行对象cocos2d-x 2.x action动作整理集合
在本篇文章中,我们主要介绍执行对象的内容,自我感觉有个不错的建议和大家分享下
1.基本动作
Cocos2d供给的基本动作:刹时动作、延时动作、运作速度。
刹时动作:就是不须要时间,马上就完成的动作。刹时动作的共同基类是 InstantAction。
Cocos2d供给以下刹时动作:
- 放置 – Place
效果类似于 node.Position = ccp(x, y)。之所以作为一个动作来实现是为了可以与其他动作形成一个连续动作。
- 隐藏 – Hide
效果类似于 [node setVisible:NO]. 之所以作为一个劢作来实现是为了可以与其他动作形成一个连续动作。
- 显示 – Show
效果类似于 [node setVisible:YES]. 之所以作为一个动作来实现是为了可以与其他动作形成一个连续动作。
- 可见切换 – ToggleVisibility
2.延时动作
延时动作就是指动作的完成须要一定时间。因此actionWithDuration 是延时动作执行时的第一个参数,延时动作的共同基类是 CCIntervalAction(包含了组合动作类)。
Cocos2d供给以下刹时动作(函数命名规则是:XxxxTo: 意味着运动到指定的位置, XxxxBy:意味着运动到按照指定的 x、y 增量的位置。[x、y 可所以负值]):
- 挪动到 – CCMoveTo
- 挪动– CCMoveBy
- 跳跃到 – CCJumpTo 设置终点位置和跳跃的高度和次数。
- 跳跃 – CCJumpBy 设置终点位置和跳跃的高度和次数。
- 贝塞尔 – CCBezierBy 支撑 3 次贝塞尔曲线:P0-出发点,P1-出发点切线方向,P2-终点切线方向,P3-终点。
- 放大到 – CCScaleTo 设置放大倍数,是浮点型。
- 放大 – CCScaleBy
- 旋转到 – CCRotateTo
- 旋转 – CCRotateBy
- 闪烁 – CCBlink 设定闪烁次数
- 色调变化到 – CCTintTo
- 色调变换 – CCTintBy
- 变暗到 – CCFadeTo
- 由无变亮 – CCFadeIn
- 由亮变无 – CCFadeOut
3.组合动作
按照一定的次序将上述基本动作组合起来,形成连贯的一套组合动作。组合动作包含以下几类:
- 序列 – CCSequence
Sequence 的应用非常简略,该类也从 CCIntervalAction 派生,本身就能够被 CocosNode 对象执行。该类的作用就是线序排列若干个动作,然后按先后次序逐一执行。
- 同步 – Spawn
Spawn 的应用非常简略,该类也从 IntervalAction 派生,本身就能够被CocosNode 对象执行。该类的作用就是同时并列执行若干个动作,但要求动作都必须是可以同时执行的。比如:挪动式翻转、变色、变大小等。
须要特别注意的是,同步执行最后的完成时间由基本动作中用时最大者决议。
- 重复有线次数 – Repeate
试试看——不是像企鹅那样静静的站在海边,翘首企盼机会的来临,而是如苍鹰一般不停的翻飞盘旋,执著的寻求。 试试看——不是面对峰回路转、杂草丛生的前途枉自嗟叹,而是披荆斩棘,举步探索。 试试看——不是拘泥于命运的禁锢,听凭命运的摆布,而是奋力敲击其神秘的门扉,使之洞开一个新的天地。微笑着,去唱生活的歌谣。
重复无穷次数的动作,该类也从 IntervalAction 派生,可以被 CocosNode 对象执行。
- 反动作 – Reverse
反动作就是反向(逆向)执行某个动作,支撑针对动作序列的反动作序列。反动作不是一个专门的类,而是 CCFiniteAction 引入的一个接口。不是全部的类都支撑反动作,XxxxTo 类平日不支撑反动作,XxxxBy 类平日支撑。
- 动画 – Animation
动画就是让精灵自身连续执行一段影象,形成模拟运动的效果:行走时的精灵状态、打斗时的状态等。
- 无穷重复 – RepeatForever
RepeatForever 是从 Action 类直接派生的,因此无法参与序列和同步;自身也无法反向执行。该类的作用就是无穷期执行某个动作或动作序列,直到被停止。
4.速度变化
基本动作和组合动作实现了针对精灵的各种运动、动画效果的改变,但这样的改变的速度是不变的,通过 CCEaseAction 为基类的类系和 CCSpped 类我们可以很方便的修改精灵执行劢作的速度:由快至慢还是由慢至快。
- EaseIn 由慢至快。
- EaseOut 由快至慢
- EaseInOut 由慢至快再由快至慢。
- EaseSineIn
- 由慢至快。
- EaseSineOut 由快至慢
- EaseSineInOut 由慢至快再由快至慢。
- EaseExponentialIn 由慢至极快。
- EaseExponentialOut 由极快至慢。
- EaseExponentialInOut 由慢至极快再由极快至慢。
- Speed 人工设定速度,还可通过 SetSpeed 一直调整。
5.扩展动作
- 延时动作 – Delay ,比如在动作序列中增加一个时间间歇
- 函数调用
- 函数
在动作序列旁边或者结束调用某个函数,执行任何须要执行的任务:动作、状态修改等。id acf = [CCCallFunc actionWithTarget:self selector:@selector(CallBack1)];对应的函数为:- (void) CallBack1 {
[sprite runAction:[CCTintBy actionWithDuration:0.5 red:255 green:0 blue:255]]; }
- 带对象参数--调用自定义函数时,传递以后对象。id acf = [CallFuncN actionWithTarget:self selector:@selector(CallBack2:)];对应的自定义函数:(这里,我们直接应用了该对象)
- (void) CallBack2:(id)sender {
[sender runAction:[CCTintBy actionWithDuration:1 red:255 green:0 blue:255]]; } - 带 对象、数据参数--用自定义函数时,传递以后对象和一个常量(也可所以指针)。id acf = [CCCallFuncND actionWithTarget:self selector:@selector(CallBack3:data:) data:(void*)2];对应的自定义函数,我们应用了传递的对象和数据:
-(void) CallBack3:(id)sender data:(void*)data {
[sender runAction:[CCTintBy actionWithDuration:(NSInteger)data red:255 green:0 blue:255]]; }
文章结束给大家分享下程序员的一些笑话语录: 真正的程序员喜欢兼卖爆米花,他们利用CPU散发出的热量做爆米花,可以根据米花爆裂的速度听出正在运行什么程序。
执行对象cocos2d-x 2.x action动作整理集合相关推荐
- Android 通过Intent调用系统功能和Action动作和服务广播【大全】
1.从google搜索内容 Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putEx ...
- 开源跨平台移动项目Ngui【Action动作系统】
Ngui简介 这是一个GUI的排版显示引擎和跨平台的GUI应用程序开发框架,基于NodeJS/OpenGL,这也是第一个在移动端Android/iOS融合NodeJS的前端GUI项目,至此JavaSc ...
- cocos2dx Action动作解析(1)
bool HelloWorld::init() {// // 1. super init firstif ( !CCLayer::init() ){return false;}CCSprite * s ...
- PDF格式分析(二十三)Action动作
Action动作,除了跳转到文档中的某个页面之外,还可以指定其他类型的动作,例如启动应用程序,播放声音,改变注释的外观状态. 这些动作可以通过鼠标点击来触发,还可以通过其他的触发事件进行触发,如:Op ...
- java 静态类设置null_JAVA中对null进行强制类型转换(null可以强转为任意对象,并执行对象的静态方法)...
今天很好奇,对null进行强转会不会抛错.做了如下测试得到的结果是, 如果把null强转给对象,是不会抛异常的,本身对象是可以为null的. 但是如果是基本类型,比如 int i = (Integer ...
- PreparedStatement预编译的sql执行对象
一.预编译,防sql注入 其中,设置参数值占位符索引从1开始:在由sql 连接对象创建 sql执行对象时候传入参数sql语句,在执行对象在执行方法时候就不用再传入sql语句: 数据库索引一般是从1开始 ...
- Python 中的可执行对象 eval,exec 和 compile与其在深度学习训练中的应用实例
Python 中的可执行对象 eval,exec 和 compile 与其在深度学习训练中的应用实例 eval 计算指定表达式的值.也就是说它要执行的python代码只能是单个表达式(注意eval不支 ...
- Activiti 流程实例、任务、执行对象及相关的表
一个流程中,流程实例只有一个,执行对象可以有多个(如果存在分支和聚合) SELECT * FROM activiti.act_ru_execution a; #正在执行的执行对象表 SELECT * ...
- activity执行对象监听器
1.执行对象:从开始到结束的一条过程 2.作用:提高扩展性,每个业务可以有自己的完成逻辑 3.监听器: /** com.lc.yangzi.module.marketing.bd.listener.P ...
- 笔记整理2----Java语言基础(二)06 断点调试与数据加密+07 面向对象-类与对象+08 java常用API-基础+09 java集合+10 IO流-基础
06 断点调试与数据加密+07 面向对象-类与对象+08 java常用API-基础+09 java集合+10 IO流-基础 第06天 java基础语法 今日内容介绍 Eclipse断点调试 基 ...
最新文章
- GitHub上README.md教程
- matlab对一行矩阵fft,MATLAB?fft命令
- 本地目录+Eclipse+Webstorm当SVN配置库服务器更换-客户端设置方式
- 服务器此时无法接受控制信息,您无法修改域或信任信息,因为无法联系一个主域控制器(PDC)仿真器,请确认当前域的PDC仿真器和网络都联机并正常运行。...
- JS 与Flex交互:html中的js 与flex中的actionScript通信
- html5 职工入职后台管理系统_ChemCMS是一款基于GO+PHP+MYSQL+HTML5构建的化学内容管理系统
- Docker容器资源管理,你真的学会了吗?
- 基于zookeeper实现分布式配置中心(二)
- python对原数组遍历_Python数组遍历的简单实现方法小结
- linux入门生信,优秀学员的学习方法展示
- 使用samba完成Linux服务器与Windows之间的映射
- #includeiostream和#includeiostream.h的区别
- UVa 10361 自动作诗机
- Sprite Kit 移动精灵
- 罗永浩和锤子手机:对不起,我被你打动了
- 学习乐器的好处(1)
- 并发之volatile底层原理
- 移动支付(mobile money)系列 —— Apple Pay的原理
- Python的开源人脸识别库:离线识别率高达99.38%【源码】
- 用STM32CubeMX配置输出PWM信号控制多路舵机(HAL)
热门文章
- voices——最后的决赛
- 闲话WPF之二十(WPF中的传递事件 [2] )
- 【javascript练习题】函数
- 新辰:传统行业进军互联网 怎样颠覆网络获得新生?
- python学习笔记 - 函数: 传参列表副本(不改变列表本身)
- css3动画由浅入深总结
- ubuntu 14.04 安装中文输入法fcitx
- win7 任务计划 任务映像已损坏或篡改(异常来自HRESULT:0x80041321)
- Hrbust 1522 利用队列求最大子序列的和
- win7 IIS7 HTTP 错误 404.2 - Not Found的解决方法