我正在使用ThreeJS的最新版本(发布日期)。我正在尝试导入带有操纵动画的ThreeJS Blender模型。我在网上遇到的所有教程都提到了THREE.AnimationHandler
或THREE.Animation
。但我得到的错误是说没有这样的构造函数。
在线浏览文档时,我可以看到它们:
他们都没有被剥夺权利。查看src文件时,我也不会在那里看到它们。 我在这里错过了什么吗?
答案 0 :(得分:3)
我几天前遇到过同样的问题。我发现新动画系统已在最近的版本中实现。这篇文章帮助了我 - New skinned mesh animation system in three.js。似乎文档还没有更新。
所以在我的情况下,我需要在json
中导入模型并启动动画,代码如下所示:
var loader = new THREE.ObjectLoader(),
clock = new THREE.Clock(),
mixer;
loader.load('models.json', function (object) {
// Get object animation
var sceneAnimationClip = object.animations[0];
// Create animation mixer and pass object to it
mixer = new THREE.AnimationMixer(object);
// Create animation action and start it
var sceneAnimation = mixer.clipAction(sceneAnimationClip);
sceneAnimation.play();
scene.add(object);
render()
});
function render() {
requestAnimationFrame(render);
// Update animation
var delta = clock.getDelta();
if( mixer ) {
mixer.update( delta );
}
renderer.render(scene, camera);
}