OpenGLES:如何找到纹理大小

时间:2013-04-16 15:24:09

标签: opengl-es

我正在使用一些旧的OpenGL代码,我遇到了一些问题......

glGetTexParameterfv(GL_TEXTURE_2D, 0, GL_TEXTURE_WIDTH, &glW);
glGetTexParameterfv(GL_TEXTURE_2D, 0, GL_TEXTURE_HEIGHT, &glH);

现在我是OpenGL的新手,但我猜这会抓住纹理的高度和宽度。问题是,OpenGLES没有GL_TEXTURE_WIDTH或HEIGHT。现在我知道每个人都要给出的第一个答案是“你需要自己管理”,但是,这是一个相当大的代码库,需要花费一些时间来解决这个问题。

我的问题是......

如何在OpenGLES中获取纹理的宽度/高度?

1 个答案:

答案 0 :(得分:3)

明显的反应问题:为什么需要这些信息?

除了明显的问题,纹理大小不会直接暴露。您可能做的最好的事情是使用glTexSubImage检查GL_INVALID_VALUE来搜索大小 - 我对GLES man page的读数是width = height = 0 isn这是一个错误条件,所以你可以寻找接受的最大(x,y)而不实际上传任何数据。

相关问题