javascript - 在 HTML5 Canvas 中撕裂?

标签 javascript html canvas tearing

我正在使用 HTML5 canvas 元素制作一个小游戏。它工作得很好,除了它有一个滚动背景,在 Ubuntu 的 Firefox 和 Chromium 浏览器中发生明显的撕裂。我很确定它已被缓冲,因为没有我期望的任何闪烁;只是流泪。有什么方法可以解决此问题或在最后一次屏幕刷新后立即渲染?

最佳答案

目前没有办法控制 Canvas 元素的实际重绘(我猜如果有的话,实际上可能有助于提高性能)。因此,我们只能希望浏览器实际上做一些智能的事情,而不是像您的情况那样搞砸了。

我本人对 canvas 元素有相当多的经验,并且知道它的怪癖。到目前为止,我遇到过几次某种“重绘滞后”,显然幕后的实际数字是正确且“平滑”的,但图形仍然有些“跳动”行为,这实际上是 烦人。

我能想到的唯一可能对您的情况产生影响的是在您的显卡驱动程序设置中激活 VSync。

如果你想提供一个你的游戏链接,这可能也会有帮助,因为我在这里也运行 Ubuntu。

关于javascript - 在 HTML5 Canvas 中撕裂?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3664180/

相关文章:

javascript - select2选项背景颜色与html select相同

html - :after css not working for img tag. 这个有什么替代品吗?

asp.net - 如何为文本格式设置 div 元素的边框?

javascript - 通过 RTC 数据通道发送图像数据

javascript - 使用 CanvasRenderingContext2D 过滤器保存 Canvas

javascript - 修改 this.state 中的一项会删除 React JS State Object 中的所有其他项

JavaScript 测验评分函数

javascript - 获取元素的 offsetHeight 有副作用吗?

html - CSS - 水平/垂直线有不同的粗细

javascript - 从数组中在 Canvas 上绘制正方形