【问题标题】:Animations Jumping at around 15-16 seconds - Papervision3D Actionscript-3 Flash [closed]动画在 15-16 秒左右跳跃 - Papervision3D Actionscript-3 Flash [关闭]
【发布时间】:2013-10-15 18:32:55
【问题描述】:

我正在使用 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 秒时暂停和跳跃?

更新:我相信问题现在已经解决 - 请在下面查看我的解决方案。

【问题讨论】:

    标签: actionscript-3 flash animation blender papervision3d


    【解决方案1】:

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

    问题是,在进行任何类型的动画时,您都需要设置开始和结束位置。在这种情况下,开始和结束位置相同。这意味着动画的第一帧和动画的最后一帧是相同的。所以为了让过渡更平滑,我删除了最后一帧,这样就没有相同的帧了。

    我不确定您的问题是否也是这种情况(我从未使用过 Papervision3D),但问题似乎与我遇到的问题相似。所以也许解决方案是一样的:)

    【讨论】:

      【解决方案2】:

      我相信问题现在已经解决了。

      我忘记在 DAE 的动画中添加动画剪辑了:

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

      等等。

      这意味着在添加这些行之前,它使用剪辑“全部”——整个动画——并且变得混乱。

      我现在可以播放正确的剪辑(false = 不循环):

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

      【讨论】:

        猜你喜欢
        • 2016-08-17
        • 2010-09-15
        • 2017-12-22
        • 1970-01-01
        • 2013-09-24
        • 1970-01-01
        • 1970-01-01
        • 2021-04-27
        • 1970-01-01
        相关资源
        最近更新 更多