我在搅拌机中创建了一个模型,操纵它并创建了一些简单的动画,然后我导出到.dae。当我打开.dae文件时动画看起来很好,但是在我使用three.js将它加载到浏览器后,动画无效。
模型仍然加载,但它看起来像是在搅拌机编辑模式下的模型。 (伸出手臂并伸直),即使控制台端口没有错误也没有动画。
new THREE.ColladaLoader().load('../models/myworkblend3.dae',
function(collada) {
monster = collada.scene;
monster.scale.set(100, 100, 100);
monster.rotation.x = -Math.PI/2;
monster.rotation.z = Math.PI/2;
skin = collada.skins[ 0 ];
monster.updateMatrix();
scene.add(monster);
// enable shadows for an object
monster.castShadow = true;
monster.receiveShadow = true;
});
,动画代码为
function animate() {
requestAnimationFrame( animate );
if ( t > 60 ) t = 0;
if ( skin ) {
for ( var i = 0; i < skin.morphTargetInfluences.length; i++ ) { // length is 101
skin.morphTargetInfluences[ i ] = 0;
}
// enable the keyframe one by one
skin.morphTargetInfluences[ Math.floor( t ) ] = 1;
t += 0.5; //this prolongs the waiting time
}
render();
}
真诚地感谢任何帮助!感谢
答案 0 :(得分:2)
three.js中的ColladaLoader是实验性的,不再维护。无论如何,不幸的是,这个ColladaLoader是你最好的镜头。
我建议你在官方GitHub上发布这个bug.3.js here 随意添加功能并修复类似的问题。