2011-04-13 81 views
5

好的,我将在屏幕上绘制大量的“昆虫”。我的问题是,如果我画一个蜘蛛,例如,加载一个位图,将它矩阵到正确的角度,并将其绘制在屏幕上(一次又一次),或使用canvas.drawLine绘制一个蚂蚁, drawCircle等?对于直接的比较:加载位图或绘制图形?性能问题

位图:500个字节瓦特/透明度

得出:8个drawLines,2个drawCircles

我已经有很多事情,所以在这里的表现是非常重要的。

在此先感谢!

+0

你有两种方法的基准吗? – 2011-04-13 00:31:43

+0

不,我希望能够节省创建代码的时间,通过询问绘制线条和圆圈是否比位图更快来绘制蜘蛛。 :D – teynon 2011-04-13 00:34:15

回答

3

绘制位图要快得多。真正重要的是要绘制多少像素(即透支,这将影响最大填充率)。使用位图还可以创建更丰富的图形,而不会影响性能。

+0

我一段时间都没有在这方面做过工作,但是如果我没有记错的话,每次旋转位图时,它都会创建一个新的图形(本质上)。换句话说,它增加了更多的内存。所以如果我在屏幕上有不同角度的70只蚂蚁,那就是很多记忆。 – teynon 2012-01-09 20:39:44

+0

旋转位图不会分配内存。除非你自己制作副本。 – 2012-01-10 19:09:48

+0

屏幕上的70只蚂蚁走向不同的方向意味着每个图形必须单独旋转到指定的点。这样做与矩阵需要副本,或者有办法解决这个问题吗? – teynon 2012-01-17 21:19:02