31

iv末尾的glGetShaderiv()代表什么?

4

3 回答 3

36

它描述了返回的参数,在本例中是一个ints向量。例如,相同的命名法用于更新整数或浮点数的向量。glTexParameterivglTexParameterfv

于 2013-03-15T19:04:17.177 回答
10

OpenGL有一些关于它们在库中的例程的有组织的命名约定。

前缀

所有例程gl前面都有一个。您必须用gluand观察到类似的事情glut。一些供应商库也有前缀,就像人们在硬件功能标志中NVidia放置了前缀一样。NV_

后缀

后缀通常指示该方法采用何种参数。

  • 一些指定函数的上下文。例如1D2D3D 例如glTexCoord2D

  • 类型的值类型是函数的参数。例如glTranslatef接受GLfloat参数(注意即使数据类型也遵循相同的命名约定)并glTranslated接受GLdouble.

  • 顶点的来源(通常当有太多顶点并将它们存储在单个数组中时)采用您提到的方法: glGetShaderiv是一个函数,采用参数为shaders,其中数据类型为,数据GLint源为vector( v) .

您可以采用此类约定来轻松识别哪种方法采用哪种参数。

于 2013-05-28T10:09:18.007 回答
4

它表示您想要获得一个整数数组的值。函数参考可以在这里找到,如您所见,返回参数是 a GLint *。这与诸如 的函数形成对比glGetInternalFormati64v,后者的返回参数为GLint64 *。我相信,但目前无法定位,已经有函数使用fv后缀来表示浮点数,可能还有其他函数。

于 2013-03-15T19:03:11.270 回答