在我的Android应用程序中,我需要在surfaceview上有36个圆圈。这可以使用圆形的位图或在画布上实际绘制圆圈来完成。这两种方法的优点和缺点是什么?
修改 应用程序(游戏)将有简单的圈子。每个圆圈只有1种颜色,但共有6种颜色。看here以获得更好的想法。对于这样简单的圈子,推荐什么方法?
编辑1 我找到了一些有趣的概念here。
答案 0 :(得分:0)
Android中的Bitmap类非常重要(来自Zechner和Green的Beginning Android Games一书)。如果必须使用资源中的位图,则需要额外的空间来容纳这些资产,有时间读取它们并重现它们。使用画布,您不需要任何额外的空间,因为这些圆圈将实时绘制。此外,根据资产,您最终可能需要将源解码为RGB88,ARGB444,ARGB8888或RGB565配置 - 额外开销。
我不了解您的情况,但如果您有36个不同的圆圈和36个不同的位图,那么很容易看出这不会有效。如果它们是凹坑圆圈,那么去画布。如果它们功能丰富(在不同的地方有不同的颜色,在圆周上渲染图像等),那么Bitmap可能会更容易再现它们(虽然以一点额外的空间为代价)。
答案 1 :(得分:0)
你可以选择哪一个是你最好的技能,绘画或编程。如果你绘制的位图有使用更多ram但它渲染速度快,请注意解码并缓存所有位图。如果你使用圆圈功能绘制它可能会花费更多时间渲染和时间编程。