我一直在玩android中的图形,我注意到用画布绘制位图需要花费大量的时间和资源。特别是在需要同时绘制许多图像的高端游戏中,这对于诸如帧速率之类的事情来说可能是非常糟糕的。如果我决定学习和使用openGL,它会有很大的不同吗?或者我可能没有使用画布吗?
答案 0 :(得分:1)
这取决于您所谈论的Android版本。
在Android版本2.X中,所有画布操作都不是硬件加速的,所以它根本不使用GPU,它会在CPU上逐像素处理所有内容。
在Android 3或4中(我完全忘记了哪一个),硬件加速被添加到画布中,这样你就可以拥有GPU加速画布。
OpenGLES总是使用硬件加速,因此对于Android 2.X,它总是比画布快得多(对于任何需要合理帧率的游戏,这是你唯一真正的选择)。
在硬件加速的android中,你可能不会注意到canvas和OpenGL之间的差异,因为它们都利用了GPU,只要你的画布启用了硬件加速。