Three.js 蒙皮动画 (r74+) 功能

Three.js Skinning Animation (r74+) Functionality

使用旧的 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();

我在使用新的动画系统时不太成功。有没有人碰巧知道该怎么做?

知道了。您需要使用所需的开始时间更新混音器,而不是直接更新剪辑时间。所以:

// 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); 之前必须先播放剪辑。