在OpenGL ES中,glNormal3f的作用是什么?如果没有立即模式可用,在OpenGL ES中我会用glNormal3f做什么?请给出示例代码。
在OpenGL ES中,glNormal3f的作用是什么?如果没有立即模式可用,在OpenGL ES中我会用glNormal3f做什么?请给出示例代码。
我认为这是与glColor函数相同的原因。如果你整个几何体的法线对于所有顶点都是相同的,你可以在调用glDrawArrays/glDrawElements之前使用glNormal指定它。
glEnableClientState( GL_NORMAL_ARRAY );
glNormalPointer( GL_FLOAT, 0, vbuf + normal_offset );
调用它更简单,需要更少的VBO内存:
glNormal3f( 0, 0, 1 );
glNormal()
已经不存在了。glDrawArrays
调用中绘制的所有顶点共享相同的法线”,对吗?这样理解正确吗? - GravityOpenGL ES 1.1确实提到了它,但是在iPhone编程教程中这是一个错误。
您不应再使用这些功能。请坚持使用glXXXXArray()。我怀疑它们只是留下来的残留物,以使OpenGL到OpenGL ES的转换更容易。