我正在使用html canvas制作游戏。
这是我的进步:
http://db.tt/ei3LlR(使用WASD和左/右箭头键) 帮助ZOOM。
我的问题是:
坦克图像和炮塔图像是普通的旧png。使用这些图像动态创建阴影。阴影不是图像对象,而是画布元素。
当我改变图像的旋转时,似乎只会发生闪烁。当我说闪烁时,我的意思是图像看起来缩小并且增长得有点快。当图像停止旋转时,闪烁再次停止。
这里发生了什么?这根本不是问题吗?
答案 0 :(得分:1)
关于闪烁问题,您似乎不会双重缓冲画布。所以可能的事情是闪烁的,因为地面或阴影是在坦克之前绘制的,并且在你绘制坦克和炮塔之前屏幕刷新。
这个问题有点关于Canvas 2D的双缓冲: Does HTML5/Canvas Support Double Buffering?
我也想知道上下文的rotate
和translate
方法中的小舍入误差是否可能导致当前图像的抖动。不同的浏览器实现可能对这些操作具有不同的准确度。您可以尝试将参数舍入到最接近的整数来检查它。
答案 1 :(得分:0)
更新。问题不再存在!他们必须修好它!