忍不住来发问了!多个sprite如何做同步动画呢?

大家好!

我试用的是cocos2d-js v3.3 final版,在对N个sprite做runAction动画时,会发现动画不同步,我的做法是循环这一堆sprite并都绑定runAction做动画,虽然方法很恶心,但目前我知道的也就只能这么做。

那么问题来了:
    1、动画同步的问题能解决吗?
    2、批量绑定相同的runAction,有更优雅的代码实现吗?

动画同步我这边还能想到的是用素材做逐帧代替runAction中的效果,尝试过看到在50个sprite内肉眼看不出不同步,再多我就没尝试了。

以上问题求遇到过的同学帮忙解答啊!~~

你runAction代码是怎么写的呢

levelScene.node.getChildren().forEach(function(node, key){
        node.runAction(showEffect.clone());
})


```


我尝试过吧showEffect.clone()抽出来先做好再做runAction的,一样会卡,明显是掉帧了,看fps能看出

这问题有救不?目前我才8个元素都会不同步。。

:7::7::7::7:

能不能说的详细一点,我大概40多个sprite一起move好像不会太卡,三消游戏

@32443660

runAction里的showEffect方法我是这样写的:

        var showEffect = cc.spawn(
            cc.sequence(
                cc.scaleTo(.1, 1.2, 1.2),
                cc.scaleTo(.1, 1, 1)
            ),
            cc.fadeIn(.2)
        );


```


绑定方法就是循环sprite逐个绑上runAction的,我这边看是比较明显的

问题暂时解决了,仔细看是因为我在做动画时前一刻是移除上一批元素,虽然数量不多,但是这里出现了掉帧的情况,所以再立即添加sprite并做动画是会出现卡顿的现象,我现在直接加个定时器就完全没问题了~

恩,之前和之后的一些处理会影响帧数,要分开调试,我之前就是因为添加了一些例子系统,所以比较卡,分开就好些