较新的 three.js 版本阻止了网格上的光反射

Newer three.js version brakes light reflection on mesh

我最近从 three.js 版本 r110 升级到 r124,因为我需要 r124 中的一些新功能。但是现在我的网格不再像以前那样反射光线,一切看起来都不一样了!

有谁知道这些版本之间发生了什么变化会产生这种效果,以及如何在不恢复到旧版本的情况下撤消它?

这里有一些照片来展示我在说什么...你可以在图片中看到 ONE (r110) 光线清楚地从圆柱体反射,但在图片中 TWO(r124)效果一点都不明显!

在这里分享代码有点困难,因为该示例是一个大型项目的一部分,但这两张照片之间唯一发生变化的是 three.js 版本号。在这两张照片中,我都使用黑色 标准 material 和白色 点光源 .

一个

两个

根据我的评论...
MeshStandardMaterial 的粗糙度和金属度默认值为 changed in r112.

因此,将 material 粗糙度和金属度设置为之前默认值“0.5”的值应该会产生 material 看起来与 r112 之前相同的值。