在PowerVR GPU上调用GL_OUT_OF_MEMORY
后,遇到了glDrawElements
错误。在以下设备上会发生这种情况:
配备库存4.0(PowerVR SGX540)的Motorola Atrix 2
技嘉GSmart GS202带有库存4.x(PowerVR SGX531u)
一些带有4.x库存的LG手机(也带有一些PowerVR芯片)。
根据glDrawElements
specs的说法,它根本不会导致GL_OUT_OF_MEMORY
错误,但是我在PowerVR硬件上肯定会收到此错误。
最佳答案
这是由ETC1纹理实现中的一些错误引起的。如果我使用尺寸为1x1像素的ETC1纹理,则会在PowerVR GPU上导致此错误。我已经通过使用4x4纹理(ETC1最小块的大小)修复了它。
如果ETC1纹理与mipmap一起使用,则不会重现此问题-在这种情况下,它适用于所有mipmap。