我使用LibGdx和Tiled,当在屏幕上移动时,游戏上出现水平和垂直线条。如有必要,我可以发布您需要的任何代码。如何让这些线路停止?
这里有一行gfycat GIF:
http://gfycat.com/FastUnnaturalAmericanwirehair
修改:
这是一个小型bitbucket存储库,尽可能小,但它有同样的故障:
答案 0 :(得分:12)
这是因为您需要在瓷砖上添加填充。
这是一个非常常见的问题,您不是第一个遇到它的人。基本上由于在缩放和平移时出现舍入误差,有时您会将区域“渲染”在两个图块之间,这将导致无法渲染 - >黑色背景颜色来了。
您基本上需要使用一些工具将填充添加到您的tileset。在这forum thread中,我解释了如何做到这一点。
在stackoverflow here上还有一个关于此主题的问题。
答案 1 :(得分:1)
如果出现舍入错误,您可以随时强制将数字捕捉到所需的网格。在我看来是这样的情况:
gameCam.position.x = (float) Math.round(player.b2body.getPosition().x * 100f) / 100f;
因为我在整个游戏过程中使用了每米100像素的常数,以扩展所有内容