glRotatef是否会旋转法线方向?

3

我正在尝试使用glRotatef旋转空间中的特定对象。我不太确定它在底层是如何工作的,所以我不确定我为对象的顶点设置的法向量是否会随着顶点坐标一起旋转。我只需要知道它是否确实也会旋转法向量。


是的,没错。只有一个问题 - 如果你是新手,为什么不从非废弃的样式开始呢?我看不出来学习永远无法使用的东西有什么意义。 - Nico Schertler
1个回答

3

简短回答:是的,否则程序员将很难受。

更详细的解释:在经典OpenGL中(不是使用着色器的现代3/4版),顶点和法线会受到当前MODELVIEW矩阵的影响(颜色和纹理坐标没有影响)。因此除了旋转外,还有平移,但它没有影响,因为法线是向量。还有缩放,可能会改变法线的长度,从而影响照明计算。因此,如果您正在对受光照的模型进行缩放,则可能需要

glEnable(GL_NORMALIZE)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接