名称
glGetActiveUniformsiv — 返回有关指定程序对象的多个活动统一变量的信息
C 规范
void glGetActiveUniformsiv( GLuint program,
GLsizei uniformCount,
const GLuint *uniformIndices,
GLenum pname,
GLint *params);
参数
program
指定要查询的程序对象。
uniformCount
指定索引数组uniqueIndices中的元素数以及成功返回时写入params的参数数。
uniformIndices
指定一个UniformCount整数数组的地址,该整数包含应查询其参数pname的程序中的制服索引。
pname
指定UniformIndices中每个制服的属性,应将其写入参数的相应元素中。
参数
指定uniformCount整数数组的地址,该整数将为uniformIndices中的每个uniform接收pname的值。
描述
glGetActiveUniformsiv为程序中每个统一索引查询名为pname的参数的值,该程序的索引是在uniformCount无符号整数uniformIndices数组中指定的。成功后,将每个制服的参数值写入数组中的相应条目,其地址以params给出。如果生成错误,则不会将任何内容写入参数。
如果pname是GL_UNIFORM_TYPE,则返回一个数组,该数组标识由对应的UniformIndices数组指定的制服类型。返回的类型可以是下表中的任何值:
| 返回符号内容 | 着色器统一类型 |
|---|---|
| GL_FLOAT | float |
| GL_FLOAT_VEC2 | vec2 |
| GL_FLOAT_VEC3 | vec3 |
| GL_FLOAT_VEC4 | vec4 |
| GL_INT | int |
| GL_INT_VEC2 | ivec2 |
| GL_INT_VEC3 | ivec3 |
| GL_INT_VEC4 | ivec4 |
| GL_UNSIGNED_INT | unsigned int |
| GL_UNSIGNED_INT_VEC2 | uvec2 |
| GL_UNSIGNED_INT_VEC3 | uvec3 |
| GL_UNSIGNED_INT_VEC4 | uvec4 |
| GL_BOOL | bool |

glGetActiveUniformsiv 函数用于查询 OpenGL ES 3.0 程序对象中的多个活动统一变量信息,如类型、大小、名称长度、统一块索引等。通过指定程序对象、统一变量索引和属性参数,可以获得关于统一变量的详细数据。当查询类型、大小时,返回值会根据所查询的统一变量类型有所不同。该函数有助于理解和调试 OpenGL ES 程序中的统一变量设置。
最低0.47元/天 解锁文章
380

被折叠的 条评论
为什么被折叠?



