OpenGL ES Shader相关API 总结【3】——绑定shader

简介: OpenGL ES Shader相关API 总结【3】——绑定shader

绑定Shader

1.

GLuint glCreateShader(GLenum shaderType)

功能:创建一个指定类型的shader对象

输入:shader类型

输出:一个该类型的shader对象

2.

void glShaderSource(GLuint shader, GLsizei, count, const GLchar* const* string, const GLint* length)

功能:更新指定shader对象的源代码

输入:指定shader对象的ID,使用几组字符串对该shader对象进行赋值,字符串数组以及用于存放每个字符串包含字节长度的数组

3.

void glCompleShader(GLuint shader)

功能:对指定shader对象进行编译

输入:指定shader对象的ID

4.

void glShaderBinary(GLsizei n, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);

功能;将预先编译好的shader存入一组shader对象中

输入:一组shader的数量以及shader的指针,预先编译好的shader格式,编译好的shader二进制的位置和长度

5.

GLuint glCreateProgram(void)

功能:创建一个program,用于把一组shader绑定在一起

输出:一个program对象

6.

void glAttachShader(GLuint program, GLuint shader)

功能:将一个指定的shader,绑定到一个指定的program上

输入:指定program的ID,以及指定shader的ID


7.

void glDetachShader(GLuint program, GLuint shader)

功能:将一个指定的shader,从指定的program上解绑

输入:指定program的ID,以及指定shader的ID


8.

void glLinkProgram(GLuint program)

功能:将指定的program做链接操作,也就是将Program上绑定的shader互相链接起来

输入:指定Programe的ID


9.

void glUseProgram(GLuint program);

功能:将指定program将被GPU使用,也就是说:如果OpenGL ES的其他API以及GPU对Program进行操作,那么操作就是这个program

输入:指定program的ID


10.

void glDeleteProgram(GLuint program);

功能:删除一个指定的Program

输入:指定program的ID


11.

void glDeleteShader(GLuint shader)

功能:删除一个指定的shader

输入:指定shader的ID


12.

void glReleaseShaderCompiler(void)

功能:删除Shader编译器相关的资源

目录
相关文章
|
6月前
|
Java API
java 操作es api
java 操作es api
81 0
|
24天前
|
数据可视化 API 索引
ES常见Index API操作最佳实践!
【10月更文挑战第21天】
53 1
ES常见Index API操作最佳实践!
|
1月前
|
存储 数据可视化 JavaScript
可视化集成API接口请求+变量绑定+源码输出
可视化集成API接口请求+变量绑定+源码输出
46 4
|
6月前
|
JavaScript 前端开发 IDE
Vue3【为什么选择Vue框架、Vue简介 、Vue API 风格 、Vue开发前的准备 、Vue项目目录结构 、模板语法、属性绑定 、 】(一)-全面详解(学习总结---从入门到深化)
Vue3【为什么选择Vue框架、Vue简介 、Vue API 风格 、Vue开发前的准备 、Vue项目目录结构 、模板语法、属性绑定 、 】(一)-全面详解(学习总结---从入门到深化)
103 1
|
6月前
|
XML 小程序 Java
【Android App】三维投影OpenGL ES的讲解及着色器实现(附源码和演示 超详细)
【Android App】三维投影OpenGL ES的讲解及着色器实现(附源码和演示 超详细)
126 0
|
存储 编解码 算法
Opengl ES之LUT滤镜(上)
Opengl ES之连载系列
460 0
|
数据安全/隐私保护 开发者
OpenGL ES 多目标渲染(MRT)
Opengl ES连载系列
324 0
|
数据安全/隐私保护 索引
Opengl ES之纹理数组
Opengl ES连载系列
259 0
|
数据安全/隐私保护
Opengl ES之水印贴图
Opengl ES之连载系列
152 0
|
Java 数据安全/隐私保护 Android开发
Opengl ES之矩阵变换(下)
Opengl ES连载系列
132 0