我是否正确假设如果我有一个不规则形状的精灵(除了正方形/矩形以外的任何东西)需要在背景图像上绘制,我不能使用RGB565,因为这种格式没有alpha透明度的渠道?
这是否会使RGB565格式对绝大多数游戏精灵都没用?或者我错了吗?
还有其他选择吗?哪种格式最适合我使用以获得最佳性能?
我问这个是因为我使用
将原始位图转换为RGB565options.inPreferredConfig = Bitmap.Config.RGB_565;
它们似乎没问题 - 即仍然具有透明度。
但是当我尝试使用RGB565对精灵进行重新着色时,它周围会出现一个黑色正方形,所以我有点困惑!!!! h
全部谢谢
答案 0 :(得分:3)
你加载的RGB565位图似乎有效的原因是因为如果你的位图有alpha,它们将被加载为ARGB444或ARGB8888。 inPreferredConfig
只是提示您希望在可能的情况下使用该格式的位图。
没有转换。
您可以通过在加载的位图上调用getConfig()
来查看此内容。
您始终可以使用RGB565加载位图,将另一个加载为A8,并将它们一起使用,但这样做的成本可能高于仅使用其中一种ARGB格式。
总而言之,只需使用ARGB8888,或者内存是个问题,ARGB4444(although this is deprecated)