【问题标题】:Most efficient way to do Parallax in an HTML5 Game在 HTML5 游戏中进行视差的最有效方法
【发布时间】:2014-01-02 21:00:39
【问题描述】:

将每个背景层绘制到不同的画布上然后移动它们更好还是每帧重新绘制它们更好?

我必须在画布上绘制它们,因为我的游戏是基于图块的,而背景是从图块构建的。

【问题讨论】:

  • 严格来说,您可以使用 SVG 甚至仅使用带有背景图像的 div 的 HTML 来制作基于图块的游戏。
  • 是的,我在使用 Canvas 之前使用 div 完成了此操作,但性能不佳。它甚至无法以 60 fps 运行。

标签: javascript performance html5-canvas game-engine parallax


【解决方案1】:

根据定义,视差是指以不同速度移动的 2 张以上图像。

因此“将类似速度的动画放在自己的画布上”的一般效率规则适用。

例如:

  • 您的背景可能每 3 帧移动一次。
  • 您的角色可能会在每一帧移动。

节省 == 每 3 帧绘制 2 次背景(相当不错的节省!)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-17
    • 2016-12-03
    • 1970-01-01
    • 1970-01-01
    • 2019-08-22
    • 2012-03-15
    相关资源
    最近更新 更多