3

只是一个快速的问题。我在 3D OpenGL 场景中有一个四边形。我逆时针定义了平面的法线。使法线指向平面的一侧。在我的光源方向。四边形很轻,但在两侧。

它不仅应该在四边形的一侧发光吗?还是像四边形这样的基元非常薄,因此从两侧看起来都很轻。因此,如果我想制作一堵墙,我会使用两个四边形。墙的每一侧都有一个。

谢谢

4

1 回答 1

8

两侧多边形的默认 OpenGL 光照行为是计算正面的光照并将其应用于两侧。

您可以通过为每个双面多边形使用具有单独法线的前后多边形来解决此问题。

或者,您可以使用 glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, GL_TRUE) 启用 GL_LIGHT_MODEL_TWO_SIDE 进行光照计算。有关更多信息,请参阅glLightModel 参考

于 2011-04-24T15:23:57.710 回答