【问题标题】:How to use spritesheet animation created in Cocos Studio如何使用在 Cocos Studio 中创建的 spritesheet 动画
【发布时间】:2016-09-30 21:19:02
【问题描述】:

我正在学习使用 Cocos Studio。问题是:

我在 Cocos Studio 中从多个精灵创建了一个动画。现在我想将它加载到我的 cocos2d-x 项目中。我从昨天开始研究这个问题,但直到现在没有结果。

请帮帮我!

【问题讨论】:

    标签: cocos2d-x cocos2d-x-3.0 sprite-sheet


    【解决方案1】:

    加载场景/图层:

    auto node = CSLoader::createNodeWithVisibleSize("file.csb");
    

    加载动画时间线并播放:

    auto animTimeline = CSLoader::createTimeline("file.csb");
    node->runAction(animTimeline);
    animTimeline->gotoFrameAndPlay(0, true);
    

    如果您有嵌入层找到正确的子节点,请加载适当的时间线并使用:

    node->enumerateChildren("//child", [=](Node* _node)
    {
        auto animTimeline = CSLoader::createTimeline("child.csb");
        _node->runAction(animTimeline);
        animTimeline->gotoFrameAndPlay(0, true);
        return true;
    });
    

    (有关使用详情,请参阅 CCNode.h 中的 Node::enumerateChildren() 声明)

    【讨论】:

    • 非常感谢您的回答,但这不是我想要的。在 Cocos Studio 中,我创建了很多动画,每个动画都是由多个 spritesheet 创建的。例如,我有 anim1、anim2、anim3 ... 如何加载 anim1 并从 C++ 播放?
    • 您还可以通过时间轴动作按名称播放动画: animTimeline->play("anim1", loop); (github.com/cocos2d/cocos2d-x/blob/v3/cocos/editor-support/…)
    猜你喜欢
    • 1970-01-01
    • 2021-08-08
    • 1970-01-01
    • 1970-01-01
    • 2015-11-27
    • 1970-01-01
    • 2016-06-24
    • 2014-03-25
    • 2012-04-21
    相关资源
    最近更新 更多