OpenGL - glVertex取代了绘制点?

时间:2011-05-04 21:54:18

标签: opengl replace

在下面的OpenGL代码中,会发生什么?

glNormal3f( nx1, ny1, nz1 )
glVertex3f( x1,y1,z1 )
glNormal3f( nx2, ny2, nz2 ) //different Normal
glVertex3f( x1,y1,z1 )      //same vector

用语言:
我有一个正常的点,如果我用另一个法线再次创建点,该点会改变他的旧法线向量,还是忽略最后一次调用?

当我试图以更平滑的方式渲染具有光照的球体时,出现了这个问题 使用法线。

2 个答案:

答案 0 :(得分:1)

glNormal3f()只设置当前正常状态,直到下一次glNormal3f()呼叫为止。

每个glVertex3f()复制当前的法线,颜色和纹理坐标,并将完整的顶点提交给GL命令队列。

答案 1 :(得分:0)

它只会在完全相同的位置绘制。幕后没有任何魔法可以将点“识别”为位于同一位置,更新法线等。