Opengl glRotatef是否也旋转法线方向?

Opengl glRotatef是否也旋转法线方向?,opengl,linear-algebra,opengl-compat,Opengl,Linear Algebra,Opengl Compat,我正在尝试使用glRotatef旋转空间中的特定对象。我不确定它在引擎盖下是如何工作的,所以我不确定我为对象顶点设置的法向量是否会随着顶点坐标旋转。我只想知道它是否也会旋转法线。简短回答:是的,否则程序员会非常痛苦 更长:在经典的OpenGL中,不是现代的3/4材质球,顶点和法线受当前MODELVIEW矩阵的影响。(颜色和纹理坐标不适用。) 除了旋转,还有平移,平移没有效果,因为法线是向量;和缩放,可以改变法线的长度,从而破坏照明计算。因此,如果要缩放照亮的模型,可能需要 glEnable(GL

我正在尝试使用glRotatef旋转空间中的特定对象。我不确定它在引擎盖下是如何工作的,所以我不确定我为对象顶点设置的法向量是否会随着顶点坐标旋转。我只想知道它是否也会旋转法线。

简短回答:是的,否则程序员会非常痛苦

更长:在经典的OpenGL中,不是现代的3/4材质球,顶点和法线受当前MODELVIEW矩阵的影响。(颜色和纹理坐标不适用。) 除了旋转,还有平移,平移没有效果,因为法线是向量;和缩放,可以改变法线的长度,从而破坏照明计算。因此,如果要缩放照亮的模型,可能需要

glEnable(GL_NORMALIZE)

是的。只有一个问题——如果你是新手,为什么不从一个不受欢迎的风格开始呢?我看不出有什么理由去学习一些你永远无法使用的东西。