0

在我的 javascript 控制台(在 Chrome 中)中使用我尝试使用基本加载程序添加的 collada 对象出现该错误。它特别来自其中的“scene.add(object)”块。其他一切似乎都很好。加载对象的代码如下

var ltable;
var furnLoad = new THREE.ColladaLoader();

function addlt(){
        furnLoad.load('../Models/Furniture/foldingLongTable.dae', function(collada){
                ltable = collada.scene;
                ltable.scale.x=ltable.scale.y=ltable.scale.z=1;
                ltable.updateMatrix();
                ltable.position.x=ltable.position.z=ltable.position.y=0;
        });
        scene.add( ltable );
}

这个函数在一个页面的初始化过程中被调用,否则,它工作得很好。可以在此处找到该页面(没有此表的版本具有相同的 URL,除了末尾的 4 而不是 3),以及此处的特定对象。

克服此错误的推荐方法是什么?

4

2 回答 2

0

解决。Collada loader 只是讨厌成为任何功能的一部分,并且在其中时无法工作。所以解决方法是将它们放在函数之外,它们工作得很好。

于 2011-12-07T07:47:38.140 回答
0

这个问题的答案是由于scene.add()在回调函数之外的位置。它在回调触发之前被调用,因此出现未定义的错误。

于 2014-10-15T20:45:33.350 回答