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

Ale*_* P. 6 blender three.js

我正在尝试使用来自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);
            });
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

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

在此输入图像描述

出口商设置:

在此输入图像描述

导出器输出文件:sailor.json

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

mic*_*nil 1

我不确定这是否能解决您的问题,但它至少可以告诉您问题出在哪里。

我将转换后的 JSON 文件与您的进行了比较,发现您使用的 JSON 文件没有指定对象应使用的纹理。

添加:

"mapDiffuse" : "nameoftexture.png",

给你的

"materials: [{
    ...,
    ...,
    ...
}]"
Run Code Online (Sandbox Code Playgroud)

大批。

祝你好运。

编辑

当我将这一行添加到材质属性数组中时,您的模型似乎可以使用纹理。