我在市场上有一个使用OpenGL渲染一些基本形状和平面的动态壁纸。简单的照明会在平面上产生渐变效果,在大多数设备上看起来都很好。三星Galaxy S2系列似乎有一些麻烦,在呈现渐变,不过,你可以在这个屏幕截图中看到:Android上的OpenGL渐变色带
彩色条纹看起来很恐怖,尤其是相对于从一个令人难以置信的这个屏幕截图:
我使用的是在这两种情况下,565 EGL配置,所以我相信这只是一个显示问题与GS2设备。任何人都可以证实这种怀疑吗?
是否有任何解决方案?
我在市场上有一个使用OpenGL渲染一些基本形状和平面的动态壁纸。简单的照明会在平面上产生渐变效果,在大多数设备上看起来都很好。三星Galaxy S2系列似乎有一些麻烦,在呈现渐变,不过,你可以在这个屏幕截图中看到:Android上的OpenGL渐变色带
彩色条纹看起来很恐怖,尤其是相对于从一个令人难以置信的这个屏幕截图:
我使用的是在这两种情况下,565 EGL配置,所以我相信这只是一个显示问题与GS2设备。任何人都可以证实这种怀疑吗?
是否有任何解决方案?
看起来确实是GS2的显示屏,或者更准确地说是抖动算法。我尝试正在增加我的要求配置到RGB888,这是我得到了(从我的测试用户的电话):
所以它真的好像GS2少了点试图映射时抖动了可怕的工作888空间中的颜色到565配置。
现在我不确定是否希望将所有设备的配置升级到888(质量更好但性能受到影响),或者仅限于我知道抖动不佳的设备。嗯。
您是否尝试禁用GL中的抖动?这可能会有所帮助。
GLES20.glDisable(GLES20.GL_DITHER);
我可以说的是,我看到类似的乐队发生在我的SGS2上,同时玩渐变。 – harism 2011-12-29 15:53:22
当使用抖动将图像中的颜色数量减少为可显示的颜色数量时,经常会看到这种类型的条纹。 – Charles 2011-12-29 16:00:33