对比建模的材质和在threejs创建的网格标准材质发现,你的模型没有材质的话,默认的金属度为1,而three创建的材质默认金属度为0,金属度过高导致看起来模型没有受到环境光影响。
解决方式
1.你在建模时没有给模型添加一个默认材质,添加一个默认材质导出。
2.手动设置导入的gltf模型金属度
gltfLoader.load("/models/sphere.glb", (gltf) => {
const mesh = gltf.scene.children[0];
if (child.isMesh) {
child.material!.metalness = 0.5;
}
});