使用旧的three.js(r72-)动画系统,可以在指定时间开始动画。
我做了一些事情:
// anim being an instance of THREE.Animation
var duration = anim.data.length;
anim.currentTime = Math.floor(Math.random() * (Math.floor(duration) - 0 + 1)) + 0;
anim.play();
我在使用新动画系统实现这一目标方面并不成功。有没有人碰巧知道怎么做?
答案 0 :(得分:0)
知道了。您需要使用所需的开始时间更新调音台,而不是直接更新剪辑时间。所以:
// mixer being an instance of THREE.AnimationMixer
// clip being an instance of THREE.AnimationClip
var duration = clip.duration;
var start = (Math.random() * (duration - 0) + 0).toFixed(4);
clip.play();
mixer.update(start);
我发现在调用mixer.update(start);
之前必须先播放剪辑。