将函数和参数作为参数值传递给GTweener.to函数

时间:2012-11-29 04:26:25

标签: actionscript-3 tween flare3d

我正在尝试在stage3d(使用flare3d 2.0引擎)游戏中进行平滑缩放过渡。

我正在使用GTweener来补充相机,如下所示

GTweener.to(_camera,0.5,{x:pos.x,y:pos.y,z:pos.z});

这很好用,但是我想补间其他属性,只能使用函数设置 ,例如

setRotation(x,y,z);

rotateX(value);

我不知道如何调用该函数并将函数参数作为参数传递给GTweerner.to函数

我所知道的另一项工作是将回调函数作为onUpdate属性传递,但我更愿意避免它让事情变得简单。

或者

如果有人确认我在GTweener中不可能,那么我需要寻找可以让我这样做的替代库。

2 个答案:

答案 0 :(得分:0)

我知道你正在使用GTWeener,但是你可能想要使用GTWeen类(GWTeener使用它来简化补间过程)。

它有一个onChange属性,它是一个在补间正在进行时调用的回调函数。从理论上讲,您可以在回调函数中调用setPosition()方法,以使缩放操作更流畅。

为了做到这一点,我假设你必须实际上补间其他一些属性,所以这可能不起作用或者是一个好主意。纯粹的猜测,因为我从未使用过GTween或GTweener ......我只看了文档。

注意:您可能还需要将dispatchEvents属性设置为true才能获得真实,以便执行回调。

答案 1 :(得分:0)

有时,使用线性速度进行补间时,运动中的物体似乎会“闪烁”。通过应用不同的缓动类型,您可能会发现它看起来更平滑。

例如,使用com.gskinner.motion.easing.Cubic.easeInOut

GTweener.to(_camera,0.5,{x:pos.x,y:pos.y,z:pos.z}, {ease: Cubic.easeInOut});

我不相信闪烁是由于xyz属性是按顺序设置的,因为它会在新帧出现之前发生被渲染。

相关问题