我使用geometry.center();使几何体居中。并通过将morphTargets的所有顶点保存在变量中来使morphtargets居中。现在模型在中心加载得很好,但是在播放动画时,动画没有按预期工作。没有将morphtargets顶点居中,我的动画就像预期的那样,但是在第一时间步有一个混蛋,模型正在移动到原始位置(实际加载)位置)并在那里制作动画。
阅读morphTargets后:
var geom = new THREE.Geometry();
for(i=0;i<geometry.morphTargets.length;i++)
{
geom = geometry.morphTargets[i].vertices;
geom.center();//with it,the animation plays weird
geometry.morphTargets.vertices[i] = geom;
geom.dispose();
}
我有动画(前进,回放) 在前进中:
render(){
var clock = new THREE.Clock();
var delta = clock.getDelta();
morphs=[];
for (var i = 0; i < geometry.morphTargets.length; i++) {
morphs = geometry.morphTargets[ i ];
morphs.updateAnimation(1000 * delta);
}
}
帮助我
提前致谢。