【发布时间】:2023-03-20 11:50:01
【问题描述】:
我在Blender 中对两个对象进行了建模,它们具有不同的材质和不同的纹理UV 映射到它们。我用CanvasRenderer 渲染它
如果我export it,则在生成的JSON file 中存在不止一种材料但只有一个网格。
这是我使用 Three.js 加载模型的(简化的)代码:
var loader = new THREE.JSONLoader();
loader.load(myModelPath, function {
var material = geometry.materials[0];
material.morphTargets = true;
material.overdraw = true;
var mesh = new THREE.Mesh(geometry, material);
mesh.scale.set(50, 50, 50);
mesh.position.set(0, 0, 0);
scene.add(mesh);
});
如您所见,我只使用[0] 材料。结果是第二个对象使用了第一个对象的材质(如果我使用[1] 材质,则相反)。
但我不知道如何创建使用多种材料的网格!
有可能吗?或者,有没有办法从 Blender 导出多个 JSON 文件(每个对象一个)?
【问题讨论】:
标签: javascript three.js blender uv-mapping