gpt4 book ai didi

javascript - 分组 collada 模型 onload Three.js

转载 作者:行者123 更新时间:2023-11-28 07:54:00 25 4
gpt4 key购买 nike

我当前正在加载模型的一堆元素并将它们添加到一个组中。然后我希望能够在加载后将组作为一个整体移动。

我的问题是,一旦确保所有模型均已加载,如何运行代码?我不明白如何将 .onload 函数与 colladaLoader 及其回调函数一起使用。另外,使用像我这里这样的自执行函数是一个坏主意吗?我不知道如何浏览列表并加载所有模型。

我的代码如下。我尝试使用黑客,通过使用计数器“完成”,但它并不总是有效。谢谢!

for ( var i=0; i<object.asset.length; i++ ) {

loader = new THREE.ColladaLoader();
asset = furniture.asset[i];

(function(asset) {

loader.load(asset["path"], function(collada, materials) {

//this function scales & positions model
var mesh = daeAttributes(collada, object, asset, newMaterial);

var scene = get_scene();
group.add( mesh );
complete++;

//when all assets have been loaded, add the group to the scene
if (complete===object.asset.length-1) {

//want to move the group once all the models are loaded
group = moveModel(group, object);
scene.add( group );
render();

};
});
})(asset);

更新

因此,如果我有一个要加载的唯一对象列表 >1,它就可以工作。如果只有 1 个对象,则不会加载该对象。

最佳答案

如果你把所有东西都放进去,它应该可以工作:

<body onload="myFunction()">

关于javascript - 分组 collada 模型 onload Three.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26364846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com