我在OpenGL ES中的场景需要几个大分辨率的纹理,但它们是灰度的,因为我只是用它们作为蒙版。我需要减少内存使用。
我尝试使用Bitmap.Config.ALPHA_8和RGB_565来加载这些纹理。ALPHA_8似乎实际上会增加内存使用量。
有没有办法将纹理加载到OpenGL中,并使其每像素少于16位?
glCompressedTexImage2D看起来很有前途,但据我所知,不同的手机提供不同的纹理压缩方法。此外,我不知道压缩是否实际上会在运行时减少内存使用。解决方案是将我的纹理存储在ATITC和PVRTC格式中吗?如果是这样,如何检测设备支持哪种格式?
谢谢!