ThreeJS GLTFExporter 不导出 PBR 材质贴图



我有一个简单的带有PBR材料的立方体。使用的贴图是颜色、金属度、粗糙度、凹凸。当我通过此代码导出场景时,导出的 glb 缺少除颜色之外的所有地图。这是ThreeJS中的一个错误吗?

e = new THREE.GLTFExporter();
e.parse(STAGE.scene.mesh, (glb) => {
   let blob = new Blob([glb], { type: "application/octet-stream" });
   let d = document.createElement('a');
       d.href = window.URL.createObjectURL(blob);
       d.download = "orbis.glb"
       document.body.appendChild(d);
       d.click();
       document.body.removeChild(d);
}, {binary: true});

你应该使用不同的纹理。其原因是 gltf 规范:

  • gltf 使用法线映射而不是凹凸图,因此不导出凹凸图
  • 金属贴图
  • 和粗糙度贴图仅在纹理相同时才导出,因为 gltf 对两者使用单个纹理(请参阅 https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#metallic-roughness-material 和 https://github.com/mrdoob/three.js/issues/14940,以获取在导出器中合并这些纹理的特征请求(

相关内容

  • 没有找到相关文章

最新更新