将场景从blender导出到threejs:每个对象只有一个材质

时间:2015-04-28 19:02:36

标签: three.js blender exporter

我在搅拌机中制作了一个小场景(6个物体,每个物体使用1到4种材料)。 当使用dev导出器导出它(使用材质和场景选项)并通过以下方式加载它时:

var loader = new THREE.ObjectLoader();
loader.load( 'assets/scene.json', function ( scene ) { ...

然后检查现场,我可以看到它有6个孩子(好)并且五个孩子中的每一个只有一个MeshLambertMaterial(而不是来自搅拌器的材料混合)坏。

我做错了什么提示?

这些是btw基本材料(基本上只是一种颜色)没有纹理或任何东西。

场景渲染正确(减去材质混合)。

以下是113kb场景文件(压缩)的链接:http://jppresents.net/static/blender/exportBug/scene.zip

查看文件我认为所有材料都在那里 - 所以问题必须是我加载它的方式?

1 个答案:

答案 0 :(得分:0)

不是解决方案,而是解决方法: 由于我所有材料之间的唯一区别就是颜色,我现在只应用了一种材质,每个物体都有多色纹理。 然后我将对象的面部uv映射到与先前设置的材质颜色对应的颜色。

使用热键“shift + G”可以很容易地选择所有具有相同材质的面。 (然后将它们分配给纹理材质,将uv视图中的那些移动/缩放到与旧颜色匹配的纹理部分。)