【发布时间】:2017-08-24 08:40:10
【问题描述】:
我正在将一个简单的场景从搅拌机导出到三个。除了没有显示纹理(我也在与之斗争)之外,我对物体的位置有一个奇怪的问题。这是它在搅拌机中的样子:
这就是它在三个中呈现的方式
如您所见,元素相互堆叠(并且缺少天空盒纹理,即使它在 json 中被正确引用,嵌入为 base64 图像)。我正在使用 Three.js exporter v 1.5.0、three.js v84 和 blender v 2.77
这是我的配置:
这是加载场景的代码:
var loader = new THREE.ObjectLoader();
loader.load(
'../dist/landscape.json',
function ( obj ) {
scene.add(obj)
}
);
现在,我确实意识到这种方式是在向场景添加场景,但出于某种原因,如果我尝试像这样从中提取孩子:
loader.load(
'../dist/landscape.json',
function ( obj ) {
obj.children.forEach(function(elem) {
scene.add(elem)
}
}
)
我只得到了一半的物品。不知道为什么。此外,这些物体仍然相互堆叠。我检查了结果中的位置与搅拌机中的原始值,除了标准的 y/z 交换 x 值被反转(尽管这不是问题的原因),并且旋转从桥中移除,导致它渲染上下翻转。我完全迷路了
此外,还有 .blend 和 .json 文件:
http://www.filehosting.org/file/details/653174/landscape.blend http://www.filehosting.org/file/details/653175/landscape.json
编辑: 部分解决方案:在导出器中将比例设置为 10,导致对象看起来好像放错了位置。问题是,它们仍然是旋转的,与原来的相比仍然存在一些不匹配。图片在这里:
【问题讨论】:
-
我遇到了类似的问题,正如您提到的,在 Blender three.js 导出器设置中将比例设置为 1 会有所帮助。这意味着它在 three.js 场景中几乎不可见,但我只是将其放大,一切都很好。
-
是的,但是正如我最后写的那样,我确实设法解决了这部分问题。不过,旋转部分并没有固定。
标签: javascript three.js blender