如何在对象变为可见后停止动画循环并重置它?

How do I stop an animation loop and reset it after an object turns visible?

最近开始接触SparkAR Studio,对节点编程不太习惯

我正在制作一个简单的眨眼游戏,用户通过眨眼来控制一个物体。

问题是在显示 'Game Over' 屏幕后(在对象属性中检查可见性),循环仍在后台运行。这样做的问题是当用户点击屏幕重试时,如果时机不对,循环会导致障碍物停在角色面前,导致玩家再次失败。

有没有办法在对象变为可见/不可见时停止动画循环?

通过脚本/补丁编辑器。

(如果您需要工作文件,我很乐意提供)

在您的脚本中,有非常简单的方法可用:

  • driver.reset();(如果你需要后退)
  • driver.stop();

如果您需要在脚本中实现所有动画:

const Animation = require('Animation');
//set up the length of the animations, 1000 = 1 second
const driverParameters = {durationMilliseconds: 1000, loopCount: Infinity, mirror: false};
var driver = Animation.timeDriver(driverParameters);
var sampler = Animation.samplers.linear(startValue, endValue);
myObject.transform.y = Animation.animate(driver, sampler);
// requires a first call
driver.start();