名称:
glNormal —— 设置当前法线数组
函数原型:
void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
void glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz);
函数参数:
nx, ny, nz 指定新的当前法线的x, y, z坐标。初始值为(0,0,1)。
描述:
glNormal指定的法线不需要为单位长度。如果开启了GL_NORMALIZE,由glNormal指定的任何长度的法线都将在转换后被标准化。如果开启了 GL_RESCALE_NORMAL,法线将会通过派生自模型视图矩阵的缩放因子进行缩放。GL_RESCALE_NORMAL需要原来指定的法线为单位长度。调用带GL_NORMALIZE或GL_RESCALE_NORMAL参数的glEnable和glDisable函数来开启和关闭标准化,默认标准化是被关闭的。
本文深入探讨了glNormal函数的使用方法,包括其函数原型、参数定义及描述,重点阐述了如何通过glNormal函数设置当前法线数组,并介绍了函数内部的工作原理和应用场景。同时,解释了glNormal函数在不同情况下是否需要开启标准化操作,以及如何通过glEnable和glDisable函数来控制这一过程。
1万+

被折叠的 条评论
为什么被折叠?



