0
好吧,所以加載器的異步行爲是什麼讓我失望。下面是我有:如何在three.js中加載json對象的數組?
for(i = 0; i < 37; i++){
partLoader.load("parts/" + filename[i], function (geometry) {
var partMesh = new THREE.Mesh(geometry, basicMat);
partMesh.position.y = yPos;
partMesh.position.x = xPos;
bodyPart.push(partMesh);
rayCastScene.add(partMesh);
});
}
本來我是設置bodyPart[i] = partMesh
而是由當時的回調跑到我= 36,他們都只是在最後一個元素改寫對方。推他們至少讓他們在陣列中,但我不知道哪個索引隨着哪個元素了。
我使用這個與光線追蹤識別特定對象。 if(SELECTED == bodyPart[i]) ...
類似的問題在這裏,但沒有辦法解決:THREE.JS loading an array of STL Meshes
我不明白我猜。這在我的上下文中如何工作? – Sammy 2014-11-24 22:37:20
您加載異步的東西,所以你最終更快,然後阿賈克斯完成,所以你需要做,只有當第一個結束一次迭代或者你會得到你所得到的) – Smile0ff 2014-11-24 22:44:01
大大減緩了加載時間,但它確實工作。 – Sammy 2014-11-25 03:18:52