OpengGL 函数命名

glUniformMatrix4fv

1.在OpenGL中,没有使用任何参数并在函数尾不具有数据类型代号的函数只有一个: GL_ENUM error = glGetError();

2.只具有一个参数(GL_ENUM)而且不具有函数尾数据类型代号的函数有: glEnable(GL_COLOR_ARRAY);

3.大部分OpenGL函数都是适用于不止一种数据类型。这在普通版OpenGL中尤为明显,大部分函数都有至少半打变种,允许你传递诸如 GLshort, GLbyte, GLint, GLfloat, GLDouble,或 GLfixed值或参考。在OpenGL ES中,函数调用的变种和数据类型少得多。然而,OpenGL ES仍然遵循同样的命名规则,所以最好还是要理解这些数据类型代号的含义。 函数名后的第一或者第二个字母代表了数据类型。

下面是说明:

 b GLbyte

 s GLshort

i GLint

f GLfloat

ub GLubyte

us GLushort

ui GLuint

所以 glFoof()需要传递一个glFloat,而 glFoos()则需要一个 GLshort。注意: 在常规 OpenGL中,后缀中可能还包括数字。这些数字代表需要的数据类型的数量。

例如,函数glVertex3f()使用三个GLfloat。由于此命名模式大部分用于直接模式,而OpenGL ES并不支持,所以在OpenGL ES中你不会常见到这种命名规则,

然而有些函数还是遵循这种规则的,例如, glColor3f()。保持后缀中的数字可以使这两类API最大限度地兼容。再回头看看第四部分,有时函数提供更通用的功能,如glLightf()。


4. v 后缀说明函数需要传递指针类型.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值