查询GL_TEXTURE_EXTERNAL_OES的大小?

时间:2018-11-29 10:04:49

标签: android c++ opengl-es

在使用NDK Camera界面时,我偶然发现SurfaceTexture可以请求defaultSize可以被覆盖的问题。 我想获取实际大小,但SurfaceTexture无法提供查询方法。 因此,我尝试这样做:

// this runs directly after SurfaceTexture.updateTexImage
GLfloat width, height;
glGetTexLevelParameterfv(GL_TEXTURE_EXTERNAL_OES, 0, GL_TEXTURE_WIDTH, &width);
glGetTexLevelParameterfv(GL_TEXTURE_EXTERNAL_OES, 0, GL_TEXTURE_HEIGHT, &height);

在Mali系统上可以完美地工作,但在Adreno系统上返回GL_INVALID_ENUM。 extension's description并没有引入GL_TEXTURE_EXTERNAL_OES作为GetTexLevelParameter的有效参数,因此我认为我对Mali系统很幸运。

是否可以在OpenGL ES(3.1)中查询GL_TEXTURE_EXTERNAL_OES的大小?

0 个答案:

没有答案