【问题标题】:Is canvas drawing slow?画布画得慢吗?
【发布时间】:2016-07-04 19:35:28
【问题描述】:

我有我的自定义视图类,它在屏幕上显示游戏地图。我正在使用onDraw() 覆盖并在内部使用Canvas 绘图方法来绘制它。

现在我不想为我的地图设置动画,例如平滑滚动。

onDraw() 在大多数设备上的运行速度够快吗?或者我应该选择其他一些绘图方法?哪些?

【问题讨论】:

  • 试一试,看看你会得到什么样的性能。我认为这在很大程度上取决于你到底在做什么。
  • 我无法在所有设备上进行测试。如果我在我的设备上获得良好的性能,对其他人来说可能不是这样。是否有各种方法的性能评级或其他东西?
  • 有这么多设备和这么多的绘制方法,无法分辨。我使用的粗略估计是,如果您绘制的像素数小于屏幕上像素数的 1.5 倍,您应该使用 Canvas 50-60 fps。您还应该计算您绘制的透明像素。
  • 我不画像素,我画线条、图形、文本和位图。这和你说的一样吗?
  • 一切最终都是像素。只计算位图,它会给你一个很好的粗略估计

标签: android performance drawing


【解决方案1】:

只要您有一个以 30 FPS 渲染的游戏线程,所有现代设备都可以处理它。 30 FPS 也计入更新频率,因此增加 FPS 也会使移动速度更快。今天所有的安卓设备都将能够处理 30 和 60 FPS。您完全不必担心。画布绘制速度足够快,动画效果也很好

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    • 2012-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多