0
我正在编写一个基于tilebased的游戏,其中包含多个图层。 但是,当我绘制地图并尝试通过CSS缩放画布时,我遇到了上层图块获得边框的事实,这不是预期的。 绘制砖的代码如下所示:多层帆布HTML5
for (var key in Nodes) {
var currentNode = Nodes[key];
var tileProb = Math.floor(Math.random() * 10 + 1);
if (tileProb < 2) {
currentNode.passable = false;
canvasLayerZero.drawImage(currentNode.img, 0, 0, tileDim, tileDim, currentNode.x * tileDim, currentNode.y * tileDim, tileDim, tileDim);
}
else {
currentNode.passable = true;
canvasLayerOne.drawImage(currentNode.img, 20, 0, tileDim, tileDim, currentNode.x * tileDim, currentNode.y * tileDim, tileDim, tileDim);
};
};
代码确实是basicly创建一个随机地图,由两个种类的瓷砖什么:摇滚和草。岩石砖被绘制在较低的画布上,而上部的草地砖被绘制。 当要绘制的图块是岩石时,它的可通过属性设置为false。 所以我的问题,正如已经提到的那样,当我通过css进行缩放以放大时,上方的瓷砖会得到边框。如果我在同一个画布上绘制所有内容,它不会发生。但我需要多个画布能够在墙壁后面“走路”等。
有人可以解释我如何摆脱它吗?
预先感谢您!
不会使用css更改画布大小。 – ViliusL
你可以在jsfiddle上显示一个例子吗?这可能是一个浏览器相关的问题,因为我不能用FF重现它 – devnull69