Flash tweenlite比手动动画快/轻吗?

Flash tweenlite比手动动画快/轻吗?,flash,actionscript-3,Flash,Actionscript 3,我想知道使用tweenlite或手动设置同一剪辑的动画时,处理器的使用是否有差异?考虑到它的向量和动态文本 类似地,如果我们手动设置动画或复制该动画生成的代码段。这会对CPU使用率产生影响吗?我真的不知道IDE tweening生成的代码是否更快(我非常怀疑,因为初始化运动和简化函数和变量会有开销),但从性能角度来看,您需要考虑以下一些一般因素: 经典运动tween中的每一帧(非关键帧)都是预先计算和存储的,为SWF添加了一些小字节。在特别长的动画中,这些动画的总大小为千字节。对于仅存储关键帧

我想知道使用tweenlite或手动设置同一剪辑的动画时,处理器的使用是否有差异?考虑到它的向量和动态文本


类似地,如果我们手动设置动画或复制该动画生成的代码段。这会对CPU使用率产生影响吗?

我真的不知道IDE tweening生成的代码是否更快(我非常怀疑,因为初始化运动和简化函数和变量会有开销),但从性能角度来看,您需要考虑以下一些一般因素:

  • 经典运动tween中的每一帧(关键帧)都是预先计算和存储的,为SWF添加了一些小字节。在特别长的动画中,这些动画的总大小为千字节。对于仅存储关键帧的shape Tween,情况并非如此
  • 因为运动之间是预先计算的,所以CPU不需要计算关键帧之间每帧中的变换等。然而,这一增益实际上并不重要,因为计算混合(alpha、层混合等)和渲染每帧的大区域会导致真正密集的CPU需求。这意味着,如果你正在移动巨大的位图或精灵,无论是经典的还是算法的tweening都不会对你有多大帮助。在这种情况下,应尽量减少重绘区域
  • 当在具有许多控制点的路径上使用时,形状二者之间可能会占用大量CPU。但它通常比混合和转化更轻
  • 文本和复杂的向量通常从位图缓存中受益匪浅
  • 直到最近(即在FlashCS3之前,IIRC)你还被限制在手动二人组的基本放松,所以这是一个真正的表演障碍。我仍然发现将它们表示为缓和函数更为清晰

所谓“手动”是指使用本机Tween功能,还是指实际根据计时器或帧速率重新定位显示对象?我假设“手动”是指在flash创作中制作的老式关键帧动画?这是非常全面的,但这里有一点。但我的问题仍然是,如果是一个平均大小的向量之间的运动(不是形状)。理论上,如果你正在做一个非常简单的动画(比如说,沿着水平线对一个小对象的x值进行tweening,可能使用一些alpha tweening),那么经典tweening和算法tweening应该会给你相同的结果。这是因为您不会点击玩家能够渲染的FPS限制。当然,TweenLite完成的函数调用、数组和字典处理应该会有开销(即额外CPU处理的毫秒数)。然而,即使在极端情况下,这也是可以忽略不计的。如果你还没有看到它的话,这可能是有趣的:它只涉及到各种各样的TwitWin引擎,而不是经典的TWEWEN。另一个需要考虑的是,经典的TWEWEN是基于帧的,TWELLITE(和马克斯等)是基于时间的。这意味着,如果在每秒30帧的电影中手动构建30帧动画,FP将尝试渲染每一帧,而不管经过了多少秒。它应该丢弃帧,但它不能预先知道哪些帧最密集;因此,它在渲染时会损失很多时间。TweenLite并非如此,因为它取决于计时器,而不是帧。它将呈现一个状态,并在下一个可能的瞬间计算它在时间图上的位置。。。。。。并相应地呈现其列表。您可以通过放置一个巨大的位图并在其上应用一个200px的模糊过滤器来测试这一点,在一部60帧/秒的电影中超过60帧。在经典的tweening中,FP将花时间处理每一帧的动画,结果在我的机器上跨越10-15秒。然而,TweenLite只显示原始帧,并在下一瞬间显示完全模糊的位图。这是因为,在TweenLite看来,1秒钟已经过去了,动画应该已经完成了。