【发布时间】:2025-12-03 08:35:01
【问题描述】:
我正在使用 OpenGL ES 在 Android 上编写一个简单的 2D 游戏。问题是,某些纹理只渲染白条而不是实际图像。
在加载纹理和绑定它们的过程中都没有错误。所有纹理都具有 2 大小的幂。
我正在使用扩展名glDrawTexfOES 来绘制纹理。
我怀疑我的 GPU 内存可能用完了,但我该如何检查呢?还有其他想法吗?
【问题讨论】:
标签: android opengl-es textures
我正在使用 OpenGL ES 在 Android 上编写一个简单的 2D 游戏。问题是,某些纹理只渲染白条而不是实际图像。
在加载纹理和绑定它们的过程中都没有错误。所有纹理都具有 2 大小的幂。
我正在使用扩展名glDrawTexfOES 来绘制纹理。
我怀疑我的 GPU 内存可能用完了,但我该如何检查呢?还有其他想法吗?
【问题讨论】:
标签: android opengl-es textures
您应该通过两种方式增强代码:
类似的Android调用是
((GL11) gl).glTexParameteriv(GL10.GL_TEXTURE_2D, GL11Ext.GL_TEXTURE_CROP_RECT_OES, new int[]{0,0,100,100},0);
在许多其他答案中,有一个说明只是为 2D 投影设置所有内容并绘制一个四边形。
【讨论】: