我在搅拌器中做了一个简单的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