问个小问题哦,cc.spawn的同时执行是绝对的还是相对的?

现在的情况是这样的,官方已经做好了动态创建animation的API,可以动态创建帧动画,因为我的项目里的人物身上是有穿戴装备的,比如衣服,鞋子,裤子,这些都是分开的,要做成单独的sprite

如果我要执行某一个动画,这个动画是帧动画,也就是animation,而不是actions,我就要让身体,衣服,鞋子,裤子执行同样的动画(比如身体的动画是从编号20开始到编号40结束,衣服裤子鞋子就都要从编号20的帧开始,编号40的帧结束),如果我要保证同步执行,每一个sprite的动画执行我放在一个cc.callfunc里,这样就有很多个callfunc,那么问题来了

cc.spawn是绝对的同时吗?就是说保证所有的参数都在同一时刻执行?

还是说是相对的,就是执行完参数1,然后执行参数2,参数3,参数4,只不过CPU运行速度太快,看不出来延迟

如果是第二种,我自己把所有动画写在同一个函数里执行,应该是一样的效果吧?

是依次执行每个 action,但看起来是同步的原因不是 cpu 快看不出延迟,而是每一帧都会先等所有 action 执行到这一帧所需要的位置,然后再进入下一帧的动作。

哦哦,但是cc.callFunc呢?这个不能判定帧位置吧?还是说保证在同一帧(或者相同时间周期内)内执行所有callfunc?

还有,大神,我的动画是animation,不是actions,而且我需要动态创建,所以在播放和切换动画的时候,我就需要给每个sprite动态创建animationClip,然后才能播放新动画,播放的时候我是只需要挨个调用.play,还是用cc.callfunc包装然后用cc.spawn?

这里的同时spawn和序列指的是已帧为区分的,而不是同步异步。

不是 action 的话你就同时调用几个动画的 play() 方法就是了,保证这些动画的时长一致
cc.spawn 和 cc.callFunc 是只针对 action 的,和 animation 没有关系

好吧,谢谢男神

感谢回复,摸摸大:wink: