2012-11-29 115 views
0

我正在尝试在我的stage3d(使用flare3d 2.0引擎)游戏中平滑缩放转换。将函数和参数作为参数值传递给GTweener.to函数

我使用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然后我需要寻找,让我做替代库。

回答

0

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

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

为了做到这一点,我假设你必须实际补间一些其他财产,所以这可能无效或成为一个好主意。纯粹的猜测,我从来没有使用过GTween或GTweener ......我只看过文档。

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

+0

可以在不创建GTween实例的情况下使用onChange,我希望避免它,因为它具有处理传递“当前值”的开销。如果它很简单,你可以请添加一个代码剪切? –

0

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

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

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

我不相信闪烁是由于事实xy,并且z属性被顺序设置,因为它将所有之前新发生框架正在呈现。

相关问题