Cocos动画系统

Posted wickedpriest

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Cocos动画系统相关的知识,希望对你有一定的参考价值。

动画系统也是Cocos的UI中一个重要的模块,今天对它的运作进行解析。
一个动画的基类是Action,其声明如下:

class CC_DLL Action : public Ref, public Clonable
{
public:
    virtual std::string description() const;
    virtual bool isDone() const;
    virtual void startWithTarget(Node *target);
    virtual void stop();
    virtual void step(float dt);
    virtual void update(float time);
    Node* getTarget() const { return _target; }
    void setTarget(Node *target) { _target = target; }
    Node* getOriginalTarget() const { return _originalTarget; }
    void setOriginalTarget(Node *originalTarget) { _originalTarget = originalTarget; }
    int getTag() const { return _tag; }
    void setTag(int tag) { _tag = tag; }
    unsigned int getFlags() const { return _flags; }
    void setFlags(unsigned int flags) { _flags = flags; }

CC_CONSTRUCTOR_ACCESS:
    Action();
    virtual ~Action();

protected:
    Node    *_originalTarget;
    Node    *_target;
    int     _tag;
    unsigned int _flags;
};

基类中主要包含播放动画的节点_target,用于记录动画信息的_tag,以及step、update等虚函数。

以上是关于Cocos动画系统的主要内容,如果未能解决你的问题,请参考以下文章

Cocos2D 弃用的动画方法

在 cocos2d 中停止 Sprite 动画

动画不能正常工作(Cocos2d)

cocos creator基础-(十六)自定义的帧动画播放组件(需要优化)

cocos creator基础-(二十九)动画编辑器编辑地图路径

Cocos2d-x开发实例介绍帧动画使用