GLES2.0中文API-glGetUniformLocation
名称
glGetUniformLocation- 返回统一变量的位置
C规范
GLint glGetUniformLocation(GLuint program,const GLchar *name);
参数
program
指定要查询的程序对象。
name
要查询其位置的统一变量的名称。
描述
glGetUniformLocation返回一个整数,表示程序对象中特定统一变量的位置。 name必须是不包含空格的空终止字符串。 name必须是程序中的活动统一变量名,它不能是结构,也不能是结构数组或向量或矩阵的子组件。 如果name与程序中的活动统一变量不对应,或者name以保留前缀“gl_”开头,则此函数返回-1。
可以通过为结构中的每个字段调用glGetUniformLocation来查询作为结构或结构数组的统一变量。 数组元素运算符“[]”和结构字段运算符“.” 可以在name中使用,以便选择数组中的元素或结构中的字段。 使用这些运算符的结果不允许是另一个结构,结构数组或向量或矩阵的子组件。 除非name的最后一部分表示统一变量数组,否则可以使用数组的名称或使用“[0]”附加的名称来检索数组的第一个元素的位置。
在程序对象成功链接之前,分配给统一变量的实际位置是不知道的。发生链接后,命令glGetUniformLocation可用于获取统一变量的位置。 然后可以将此位置值传递给glUniform以设置统一变量的值或glGetUniform以查询统一变量的当前值。成功链接程序对象后,统一变量的索引值保持不变,直到发生下一个链接命令。 如果链接成功,则只能在链接后查询统一变量位置和值。
错误
GL_INVALID_VALUE
:program不是OpenGL生成的值。
GL_INVALID_OPERATION
:program不是程序对象。
GL_INVALID_OPERATION
:program没有成功链接。
相关Gets
glGetActiveUniform 参数program和活动的统一变量索引。
glGetProgramiv 参数program和GL_ACTIVE_UNIFORMS
或 GL_ACTIVE_UNIFORM_MAX_LENGTH
glGetUniform 参数program和统一变量的名称
glIsProgram
另见
glLinkProgram,glUniform
版权
https://www.khronos.org/registry/OpenGL-Refpages/es2.0/xhtml/glGetUniformLocation.xml
https://blog.csdn.net/flycatdeng
Copyright © 1991-2006 Silicon Graphics, Inc.本文档的许可是根据SGI Free Software B License.详见http://oss.sgi.com/projects/FreeB/.
GLES2.0中文API-glGetUniformLocation相关推荐
- GLES2.0中文API-glUseProgram
名称 glUseProgram- 使用程序对象作为当前渲染状态的一部分 C规范 void glUseProgram(GLuint program); 参数 program 指定程序对象的句柄,该程序对 ...
- GLES2.0中文API-glGet
名称 glGet - 返回所选参数的值 C规范 void glGetBooleanv( GLenum pname, GLboolean * params); void glGetFlo ...
- GLES2.0中文API-glUniform
名称 glUniform - 指定当前程序对象的统一变量的值 C规范 void glUniform1f( GLint location, GLfloat v0); void glUniform2 ...
- GLES2.0中文API-glGetActiveUniform
名称 glGetActiveUniform - 返回有关活动统一变量的信息 C规范 void glGetActiveUniform(GLuint program, GLuint index, GLsi ...
- GLES2.0中文API-glTexImage2D
名称 glTexImage2D- 指定一个二维的纹理图片 C规范 void glTexImage2D(GLenum target, GLint level, GLint internalformat, ...
- GLES2.0中文API-glReadPixels
名称 glReadPixels - 从帧缓冲区中读取一个像素块 C规范 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei heigh ...
- GLES2.0中文API-glCopyTexImage2D
名称 glCopyTexImage2D - 将像素复制到2D纹理图像中 C规范 void glCopyTexImage2D( GLenum target, GLint level, ...
- GLES2.0中文API-glTexParameter
名称 glTexParameter - 设置纹理参数 C规范 void glTexParameterf(GLenum target,GLenum pname,GLfloat param); void ...
- GLES2.0中文API-glFramebufferTexture2D
名称 glFramebufferTexture2D - 将纹理图像附加到帧缓冲对象 C规范 void glFramebufferTexture2D(GLenum target, GLenum atta ...
最新文章
- 主流浏览器新版本将不再支持TLS 1.0/1.1
- Java的知识点21——String类、StringBuffer和StringBuilder、不可变和可变字符序列使用陷阱
- ansible+heartbeatV2构建高可用群集
- django admin使用在前端_Django| 给你博客装个Markdown编辑器
- php滴滴平台接口,图片服务API文档
- 从 Storm 迁移到 Flink,美团外卖实时数仓建设实践
- java输入最大10位数,倒数输出(很鸡肋)
- EIGRP and the OSPF redistribute
- 被抖音公司开除了....
- 用例子看Swift4的GCD
- 如何给企业选择一款ERP系统
- js中的call及apply
- android 拼音搜索
- 手把手教你用Execel计算两个矩阵的乘法
- 微信服务号突破每个月4条的限制
- 页式存储系统的逻辑地址是由页号和页内地址两部分组成的
- 使用scapy 构造一个 特定Ether dmac 的报文
- Soul聊天记录备份和恢复(旧机迁移至新机)
- mysql 手动写时间_MySQL如何在范围内填写缺失日期?
- 实习第五天 工作总结