【问题标题】:Spine multiple animations脊椎多个动画
【发布时间】:2015-08-12 02:44:01
【问题描述】:

所以我有 2 个或更多用于动画的骨架(因此,2 个或更多 json 文件)。我希望它们同时播放,并在 10 秒后播放另一个动画。

问题是只播放了一个动画,第二个不显示。

我的做法是这样的:

<canvas id="animationCanvas" width="240" height="240"></canvas>
<script>
    var first = true,
        rendererFirst = new spine.SkeletonRenderer('http://someurl.com/images/'),
        spineAFirst = /* My JSON Code */,
        parsedFirst = JSON.parse(spineAFirst);

    rendererFirst.scale = 0.2;
    rendererFirst.load(spineAFirst);
    rendererFirst.state.data.defaultMix = 1.0;

    for (var i in parsedFirst.animations) {
        if (first) {
            first = false;
            rendererFirst.state.setAnimationByName(0, i, true);
        } else {
            rendererFirst.state.addAnimationByName(0, i, true, 10);
        }
    }

    rendererFirst.skeleton.x = 120;
    rendererFirst.skeleton.y = 120;
    rendererFirst.animate('animationCanvas');
</script>

而且,当然,我做了两次(或更多)。我也尝试使用单个 SkeletonRenderer,只是根据需要多次加载(以及设置或添加)动画,但没有成功。

【问题讨论】:

    标签: javascript animation canvas spine.js


    【解决方案1】:

    似乎每次调用渲染器都会清理画布,实现这一点的更好方法似乎是为每个动画创建一个画布,并为每个动画绑定一个渲染器。

    【讨论】:

      猜你喜欢
      • 2015-07-06
      • 1970-01-01
      • 1970-01-01
      • 2014-04-10
      • 2011-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-22
      相关资源
      最近更新 更多