2011-08-02 98 views
0

在我看来,我有一个简单的ARGB drawable,需要大约2ms来绘制,但是我可以在0.5ms以内绘制相同的文件作为位图(只是一些简单的代码,我不能认为它是一个选项)。什么是优化drawable的绘制速度的最佳方法?Android可绘制绘图性能?

回答

1

这取决于可绘制的数量和每个绘制的次数。对于一个小数字,使用画布(一个确切的数字也将取决于设备)我建议使用Canvas,因为这是一个很好的更高层次的绘画方法。

如果你想发布很多图片(想想成百上千),我会建议创建一个GLSurfaceView并使用openGL来渲染你的图片,使用为你的应用量身打造的VBO。如果沿着这条路线走,我还会推荐使用纹理表,因为以代码复杂性为代价,性能将得到大幅提升。

但是,这也将取决于该类型的应用程序。我的背景是在游戏开发中,所以我只使用openGL来获得更好的性能。对于一个简单的应用程序(沿着androidify的线)画布应该没问题。如果你想要一个简单的OpenGL教程,我建议访问Bergman关于该主题的一系列帖子(谷歌应该为你提供一个链接)。这是一个很好的介绍openGL。

+0

Android中的OpenGLES不支持GLUtilities。在这种情况下,我们不能使用曲面细分来处理凹多边形。另外,使用OpenGL绘制2D时,线程是一个问题。你有什么建议吗? – Howard