Three.js导出没有纹理的Blender模型

时间:2015-11-24 16:25:13

标签: three.js blender

我正在尝试使用Three.js 73(来自github master分支)的导出器导出此https://www.dropbox.com/s/zz1g38xaci2ibod/sailor.blend?dl=1 Blender模型。

但是当我加载它时,我看不到纹理:

    var loader = new THREE.JSONLoader();
    loader.load("assets/sailor.json",
            function (geom, mat) {
                console.log(mat);
                var model = new THREE.Mesh(geom, mat[0]);

                model.castShadow = true;

                scene.add(model);
            });

enter image description here

该模型有两个网格(正文和眼睛),但看起来这个导出器只能导出一个网格...所以现在我没有眼睛出口。

enter image description here

出口商设置:

enter image description here

导出器输出文件:sailor.json

io_three.export.log为空,包含任何日志记录级别。

1 个答案:

答案 0 :(得分:1)

我不确定这会解决您的问题,但它至少会给您一些问题所在的提示。

我比较了转换后的JSON文件并与您的文件进行了比较,并注意到您使用的JSON文件未指定对象应使用的纹理。

添加:

"mapDiffuse" : "nameoftexture.png",

到你的

"materials: [{
    ...,
    ...,
    ...
}]"

阵列。

祝你好运。

修改

当我将此行添加到材质属性数组时,您的模型似乎适用于纹理。