我在攪拌器中做了一個簡單的3d模型並將其導出到.obj文件。現在我使用three.js加載它,並且我希望名稱中包含字符串'clickable'的對象在點擊時在Y軸上移動。Three.js加載導出的攪拌器模型
你可以看一下在這裏:http://three.parkz.cz/shop.html
的問題是,從對象的名稱(這是我在攪拌機設置)解析的信息不對應正確的對象。
加載和解析:
var loader = new THREE.OBJMTLLoader();
loader.addEventListener('load', function(event) {
object = event.content;
object.name = 'CustomObjects';
for(var i = 0; i < object.children.length; i++) {
//console.log(object.children[i]);
var properties = object.children[i].name.split('_');
if(properties[1] == 'clickable') {
object.children[i].clickable = true;
} else object.children[i].clickable = false;
}
object.rotation.x = 0.5;
object.rotation.y = 0.5;
scene.add(object);
});
loader.load('shop.obj', 'shop.mtl');
例如,在中心兩個立方體(稱爲「005_kiosek」和「010_kiosek2」)不應該被點擊,但他們!您可以打開控制檯,點擊它後,您可以看到它們錯誤地命名爲'004_clickable'和'009_clickable'!
這裏是我的攪拌機文件:http://three.parkz.cz/shop.blend
是它的問題在JavaScript端或攪拌機出口是錯誤的?
預先感謝您!
馬丁
P.S:有誰知道爲什麼沒有那麼簡單網格呈現良好(綠色和藍色)?
嗨Gaitat,謝謝你的迴應!我會嘗試驗證攪拌機是否能很好地輸出。你能否建議如何解決渲染問題?我應該使用攪拌器以不同方式對物體進行建模嗎 – 2013-05-11 13:26:57
是的,當您從攪拌機導出時,應該有一個選項來對模型的面進行三角測量。 – gaitat 2013-05-11 13:46:42
渲染問題解決了,現在玩點擊。謝謝!你真的幫助了我。 – 2013-05-11 14:02:09