OpenGL ES Shader相关API 总结【2】——执行绘制命令

来源:互联网 发布:电脑连接wifi后网络慢 编辑:程序博客网 时间:2024/05/16 05:52

执行绘制命令

======================

1.

GLint glGetUniformLocation(GLuint program, const GLchar* name);

功能:获取指定program中的某个uniform的index,在OpenGL ES中就可以通过index对uniform进行访问;

输入:指定program的ID, program绑定的某个uniform的变量名字符串;

输出:一个Index常量。

2.

void glUniform*iv(GLint location, GLsizei count, const GLint *value);

功能:给指定program中的某个uniform进行赋值,可以在该函数中传入一到四个成员的值或者一个数组;

输入:指定program中的某个uniform的index,如果uniform为数组时为数组的index,以及要赋的值。

3.

void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);

功能:设定绘制的视窗大小;

输入:视窗左下角的坐标,视窗的宽和高。

4.

void glClearColor(GLclampf red, GLclampf green, GLclampf  blue, GLclampf alpha);

功能:设置一种用于清理绘制buffer的默认颜色;

输入:rgba四个颜色分量。

5.

void glClear(GLbitfield mask);

功能:将绘制buffer设置成统一的值;

输入:颜色buffer或深度buffer或者stencilbuffer。

6.

void glDrawArrays(GLenum mode, GLint first, GLsizei count);

功能:按照一定的模式绘制图片;

输入:绘制模式,绘制顶点的起点和数量。

7.

void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);

功能:按照一定的模式绘制图片;

输入:绘制模式,绘制使用顶点的索引、数量,以及索引的类型。


OpenGL ES 命令后缀与参数类型命令后缀数据类型C语言类型GL类型b8-bit signed integersigned charGLbyteub8-bit unsigned integerunsigned charGLubyte, GLbooleans16-bit signed integershortGLshortus16-bit unsigned integerunsigned shortGLushorti32-bit signed integerintGLintui32-bit unsigned integerunsigned intGLuint, GLbitfield, GLenumx16.16 fixed pointintGLfixedf32-bit floating pointfloatGLfloat, GLclampf




0 0