• cocos2dx中的动作


    CCAction是cocos2dx中专门用来处理动作相关的类,几乎所有的与动作相关的类都是从它派生而来的.而CCAction继承自CCObject

    class CCFiniteTimeAction : public CCAction 

    由CCFiniteTimeAction 派生出
    的两个主要类分别是:

    瞬时动作 CCActionInstant

    持续性动作 CCActionInterval

    瞬时动作:

    即时间间隔为0的动作,实质上要到下一帧才能执行的动作.

    瞬时动作是指能立刻完成的动作,是CCFiniteTimeAction 中动作持续时间为0 的特例。更准确地说,这类动作是在下一帧会立刻执行并完成的动作,如设定位置、设定缩放等。这些动作原本可以通过简单地对CCNode赋值完成,但是把它们包装为动作后,可以方便地与其他动作类组合为复杂动作。

    主要的瞬时动作又叫即时动作:

    Place(布置位置),FlipX/Y(翻转),Show,Hide(显示,隐藏),CCToggleVisible(显示节点的隐藏和显示)

    延时动作:

    持续性动作是在持续的一段时间里逐渐完成的动作,也就是要跨多个帧循环来完成,如精灵从一个点连续地移动到另一个点,每一帧内移动一点,我们看到的移动是帧循环的累积效应。

    特点:

    a.持续性动作一般都会包括一个时间间隔的参数:float duration,即多长的时间间隔内执行完毕

    b.每一种持续性动作通常都存在两个不同的变种动作,分别具有To 和By 后缀:后缀为To 的动作描述了节点属性值的绝对变化,例如CCMoveTo将对象移动到一个特定的位置;而后缀为By 的动作则描述了属性值相对的变化,如CCMoveBy 将对象移动一段相对位移。

    主要的延时动作(又叫持续性动作):

    移动:moveto,moveby

    跳跃:jumpto,jumpby

    Bezier(贝塞尔曲线轨迹移动):BezierTo,BezierBy

    上面三个是与位置有关的持续性动作

    缩放动作:ScaleTo,ScaleBy

    旋转角度动作:RotateTo,RotateBy

    扭曲动作:SkewTo,SkewBy

    褪色动作:FadeIn,FadeOut,CCFadeTo(与透明度有关)

    折线动作:CCCardinalSpliteBy,CCCardinalSpliteTo(主要也是影响运动轨迹)

    上面是与属性有关的延时性动作

    复合动作:

    CCSpawn:通常用于并行执行两个动作,或多个动作,是动作的叠加

    CCSequence:通常用于执行一系列动作,是多个动作的串行执行

    视觉动作:

    CCBlink:闪烁动作

    CCAnimation:帧动画

    控制动作:

    CCRepeat:重复,可以设定某个动作重复的次数

    CCReaptForever:无限次重复某个动作,永远

    CCDelay:延时n秒后,执行某个动作,    class  CCDelayTime : public CCActionInterval,也可以认为是一个动作,它什么也不做,只是消耗时间

  • 相关阅读:
    spring boot Jar
    通过JS判断设备类型
    JS获取本周、上月、本月、上月的开端日期、停止日期
    移动端长按删除事件
    获取浏览器的User Anent及判断微信浏览器
    jquery.range.js左右滑动选取数值插件,动态改变进度。
    JAVA 基础 /第九课: 变量 / JAVA中 什么是变量
    dva基本用法
    Generator 简介
    使用vuex的流程随笔
  • 原文地址:https://www.cnblogs.com/ttss/p/4090016.html
Copyright © 2020-2023  润新知