我正在加载一个BM3文件,其中包含(几何和)材料信息的定义,如下所示:
{
type: "Phong",
opacity: 1,
name: "",
diffuseMap: 0,
color: [
0.254902,
0.2,
0.129412,
],
transparent: false,
specularMap: 1,
specular: [
0.811765,
0.811765,
0.811765,
],
shininessInSpecMap: true,
shininess: 174,
refractionRatioMap: 2,
refractionRatio: 3.35294,
normalMap: 3,
LUTPublications: [
"pot",
],
lightMap: 4,
}然后,我使用ThreeJS创建一个网格对象和MeshPhongMaterial。下面是按这个顺序排列的地图: diffuseMap、normalMap、specularMap、refrationRatioMap、lightMap。MeshPhongMaterial是使用除lightMap以外的上述映射创建的。





如果加载这个网格,就会得到下面的暗图像:

如果我将颜色属性改为(1,1,1)。我只得到一个更明亮的橙色,但壶仍然是黑暗的。

但是,如果我将这个对象加载到另一个应用程序中,它看起来如下所示:锅看起来很亮。在我看来,材料的金属/钢部分处理得不正确,因为我尝试过的任何其他型号都是这样的,它的部件看起来像钢。知道为什么材料被渲染成黑暗(而它应该被渲染不同/更亮)吗?

发布于 2022-01-25 21:38:50
您的正常地图很可能是颠倒的,这是导致光线反射远离相机。在生成普通地图的软件中,查找像Y+、Y-up、自下而上或OpenGL这样的设置。
https://stackoverflow.com/questions/70855289
复制相似问题