【问题标题】:How can I tell whether my 2D canvas is using hardware acceleration?如何判断我的 2D 画布是否正在使用硬件加速?
【发布时间】:2015-03-09 09:26:38
【问题描述】:

我正在创建一个用于学习画布和游戏网络的简单 2D 游戏。

但是在我的蹩脚手机上它非常非常慢,在优化它的 javascript 之前,我想排除其他可能的瓶颈。

我如何确定我的游戏是否因为我的画布在软件中渲染而变慢?

我没有做任何特别的事情来打开硬件加速,我只是打电话给drawImagefillRect来画我的火柴人和子弹。

【问题讨论】:

  • 如果 GPU 可用,Canvas 将自动使用 GPU 对其绘图进行硬件加速。画布在功能较弱的移动设备上会变慢,因为它们可能内存较少,可用的 cpu 较少,并且可能没有 gpu 来硬件加速画布绘图。
  • 我的性能瓶颈原来是扩大画布。
  • 我问这个是因为我听说 Chrome 在 256*256 画布之前不会使用硬件加速,并且怀疑我的画布(即 100*100)也没有被加速。

标签: performance firefox html5-canvas


【解决方案1】:

正如上面评论中提到的,画布在图形强度较低的手机上会相对较慢。

以下只是一些建议,可能会让您在使用画布时更轻松一些。

  • 使用 Phaser 框架构建您的游戏,它使用 PIXI 在 Canvas 上渲染图形,这利用了 WebGL 并使画布成为后备选项。
  • 查看CrossWalk,它是为 Android 编译的 Chrome 运行时打包成一个包,它大大提高了画布和 HTML5 应用程序的性能。

【讨论】:

    猜你喜欢
    • 2023-04-03
    • 2011-03-15
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-24
    • 1970-01-01
    相关资源
    最近更新 更多