动画在15-16秒左右跳跃 - Papervision3D Actionscript-3 Flash

时间:2013-10-08 17:30:25

标签: actionscript-3 flash animation blender papervision3d

我正在使用Papervision3D在Actionscript-3中显示Blender模型。

模型有动画,所以我在代码中设置了一些AnimationClip3D动画:

clip[0] = new AnimationClip3D("Clip0", 0.0, 1.0); //first animation
clip[1] = new AnimationClip3D("Clip1", 1.0, 2.0); //second animation

等等。这些是1或2秒长的小动画。数字表示以秒为单位的开始和结束时间。

模型显示正常,并按照预期的顺序正确执行动画,但每15秒左右,动画会暂停并“跳跃”,就好像有延迟一样。

我设置了一个NEXT_FRAME监听器来跟踪每一帧的数据,这是输出,其中time是AnimationEvent时间:

Frame 1 Time 0.389
Frame 2 Time 0.995
...
Frame 25 Time 14.539
Frame 26 Time 15.128
Frame 27 Time 15.707
Frame 28 Time 0.132
Frame 29 Time 0.714

如您所见,AnimationEvent时间在大约16秒时重置为零。

请原谅我的新手问题,但是,是什么导致了这个问题,如何阻止我的动画在16秒内暂停和跳跃?

更新:我认为问题现在已经排序 - 请参阅下面的解决方案。

2 个答案:

答案 0 :(得分:0)

当我在3DsMax中为3D模型制作动画时,我遇到了类似的问题,然后将其导出为单独的.png帧,然后将这些图像导入时间轴,使其循环播放。有关示例,请参阅http://www.gamersnet.nl/?skin=oranje2013。它是中间的小皇冠。我无法完全消除暂停,但除非你知道/正在寻找它,否则它会更糟糕,并且不会显得那么明显。

问题在于,在进行任何类型的动画时,您可以设置开始和结束位置。在这种情况下,起始位置和结束位置相同。这意味着动画的第一帧和动画的最后一帧是相同的。因此,为了使转换更平滑,我删除了最后一帧,因此没有相同的帧。

我不确定你的问题是否也是如此(我从未使用过Papervision3D),但问题似乎与我遇到的问题类似。所以也许解决方案是相同的:)

答案 1 :(得分:0)

我认为问题现在已经整理好了。

我忘了将动画片段添加到DAE的动画中:

myDAE.animation.addClip(clip[0]);
myDAE.animation.addClip(clip[1]);

等等。

这意味着在添加这些行之前,它是使用clip" All" - 整个动画 - 并且感到困惑。

我现在可以播放正确的剪辑(假=没有循环):

myDAE.play(clip[0], false);