我正在使用HTML5 canvas
元素制作一个小游戏。它运行良好,但在Ubuntu的Firefox和Chromium浏览器中,滚动背景明显出现了撕裂现象。我很确定它已经被缓存了,因为没有出现我所期望的闪烁,只有撕裂。有没有办法解决这个问题或者在最后一次屏幕刷新之后正确地进行渲染?
我正在使用HTML5 canvas
元素制作一个小游戏。它运行良好,但在Ubuntu的Firefox和Chromium浏览器中,滚动背景明显出现了撕裂现象。我很确定它已经被缓存了,因为没有出现我所期望的闪烁,只有撕裂。有没有办法解决这个问题或者在最后一次屏幕刷新之后正确地进行渲染?
目前没有办法控制canvas元素的实际重绘(如果有的话,我猜这可能有助于提高性能)。所以,我们只能希望浏览器会做一些智能的事情,而不是像你的情况一样搞砸。
我本人对canvas元素有相当多的经验,知道它的一些怪癖。现在已经遇到了几次"重绘滞后"的情况,其中显然幕后的数字是正确和"平滑"的,但是图形仍然具有某种程度的"跳跃"行为,这实际上是非常令人恼火的。
我唯一能想象到的可能会影响你的情况,就是在你的显卡驱动程序设置中激活VSync。
如果您愿意提供游戏链接,那也许会有帮助,因为我也在Ubuntu上运行。