我想通过three.js播放对象动画(来自mixamo,),就像奔向相机一样。通常情况下,对象会随着动画的播放而变得更近,但是我希望对象保持原样,这意味着我希望对象在适当的位置运行,而不是更靠近相机。
Mixamo可以就地播放动画,因此我认为three.js也应支持此功能。我只是不知道如何实现这一点。 我尝试在每次混音器更新后删除对象的位置。但是事情是物体的位置并不能全部改变。
// This is how I load model and get position
var loader = new THREE.ColladaLoader();
var obj = loader.load(model_path, function (obj) {
camera.add(obj)
obj.position.set(0, -1.2, -4);
var mixer = new THREE.AnimationMixer( obj );
var clips = obj.animations;
clips.forEach( function ( clip ) {
mixer.clipAction( clip ).play();
});
mixer.update(0.5)
var skeleton = new THREE.SkeletonHelper( model );
scene.add( skeleton );
var obj_position = obj.position // didn't change while animation play
})
那么如何使obj动画在原地播放?