有人知道OpenGL ES中GL_UNSIGNED_SHORT_4_4_4_4和GL_UNSIGNED_SHORT_5_6_5数据类型之间的区别吗?
它们都是16位纹理.
当使用32位纹理时,每个颜色分量有8位加上8位,用于alpha,最高质量和alpha控制,所以8888.
16位总是有折衷,如果你只需要颜色而不是alpha,那就使用565.为什么选择565?因为16位不能均匀地划分为3并且我们的眼睛在绿色光谱中的表现更好,所以通过将剩余的位置为绿色来获得更好的质量.如果你需要alpha但你的图像不使用alpha使用渐变5551,每种颜色5位为alpha 1位.如果你的图像有一些渐变alpha,那么你可以使用4444,每种颜色4位,alpha为4位.
4444具有最差的颜色质量,但它保留了一些alpha混合,我使用它作为我的字体纹理,例如,比32位轻,因为字体是单色的,它们很适合4位.