PowerVR - glDrawElements上的GL_OUT_OF_MEMORY

时间:2014-04-02 06:51:22

标签: android opengl-es opengl-es-2.0 powervr-sgx

我在PowerVR GPU上调用GL_OUT_OF_MEMORY后遇到glDrawElements错误。这发生在以下设备上:

  • 摩托罗拉Atrix 2,库存4.0(PowerVR SGX540)
  • 技嘉GSmart GS202,库存4.x(PowerVR SGX531u)
  • 一些LG手机有4.x(也有一些PowerVR芯片)。

根据glDrawElements specs,它根本不会导致GL_OUT_OF_MEMORY错误,但我肯定会在PowerVR硬件上出现此错误。

1 个答案:

答案 0 :(得分:1)

这是由ETC1纹理实现中的一些错误引起的。如果我使用尺寸为1x1像素的ETC1纹理,则会在 PowerVR GPU上导致此错误。我通过使用4x4纹理(ETC1最小块的大小)来修复它。

如果ETC1纹理与mipmap一起使用,则不会再现此问题 - 在这种情况下,它适用于所有mipmap。