xce*_*sco 5 java android opengl-es opengl-es-2.0
问题的背景是Android环境中的OpenGL ES 2.0.我有一个纹理.没有问题显示或使用它.
是否有一种方法可以从其绑定ID开始知道它的宽度和高度以及其他信息(如内部格式)?
我需要在不知道纹理大小的情况下将纹理保存到位图.
不在ES 2.0中.实际上,功能不存在是令人惊讶的.您可以获得渲染缓冲区的大小,但不能获得纹理的大小,这似乎不一致.
唯一可用的是你可以得到的值glGetTexParameteriv(),它们是纹理的参数FILTER和WRAP参数.
它仍然不在ES 3.0中.仅glGetTexLevelParameteriv()添加了ES 3.1,您可以访问所需的所有值.例如,获取当前绑定纹理的宽度和高度:
int[] texDims = new int[2];
GLES31.glGetTexLevelParameteriv(GLES31.GL_TEXTURE_2D, 0, GL_TEXTURE_WIDTH, texDims, 0);
GLES31.glGetTexLevelParameteriv(GLES31.GL_TEXTURE_2D, 0, GL_TEXTURE_HEIGHT, texDims, 1);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5643 次 |
| 最近记录: |