three.js-解决外部模型太暗的问题

先看效果

优化前
three.js-解决外部模型太暗的问题_第1张图片
优化后的效果
three.js-解决外部模型太暗的问题_第2张图片
在网上找了好久,好多方法都过时了,还有调整自发光都不行,后来又调金属度的,试了下很ok, child.material.metalness = 0.58;,完整例子看下边。

解决方案

调整模型的金属度

loader.load(
      file,
      function (gltf) {
        gltf.scene.traverse(function (child) {
          if (child.isMesh) {
            // //模型阴影
            child.castShadow = true;
            // 调整金属度
            child.material.metalness = 0.58;
            // //模型自发光
            // child.material.emissive = child.material.color;
            child.material.emissiveMap = child.material.map;
          }
        });
        scene.add(mesh);
	   },
      undefined,
      function (error) {
        setLoading(false);
        console.error("模型加载失败error", error);
      }
    );

你可能感兴趣的:(Three.js,three.js,js)