LibGDX 网格设计

LibGDX Grid design

我正在编写一个类似于植物大战僵尸的游戏,我想将其从 JFrame 转移到 LibGDX。游戏运行正常,但我现在遇到了网格问题。当我创建如下网格时,唯一改变的是边框颜色而不是矩形填充。有人可以告诉我为什么会这样吗?另外,有没有更高效的网格叠加方式?

 public Grid()
{
    db = new DB();
    ShapeRenderer sr = new ShapeRenderer();
    sr.setAutoShapeType(true);
    sr.begin();
    MainGame mg = new MainGame();
    for (int x = 0; x < 11; x++)
    {
        for (int y = 0; y < 8; y++)
        {                
            sr.rect((float) (x * 145.45454545454545454545454545454545), (float) (y * 106.25), (float) 145.45454545454545454545454545454545, (float) 106.25);
            sr.setColor(com.badlogic.gdx.graphics.Color.BLACK);                
        }
    }
    sr.end();
}

使用 ShapeType ShapeRenderer.ShapeType.Filled

shapeRenderer.begin(ShapeType.Filled);
shapeRenderer.setColor(0, 1, 0, 1);
shapeRenderer.rect(x, y, width, height);
shapeRenderer.end();

ShapeRenderer 参考: https://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/glutils/ShapeRenderer.html

尽管如此,我更喜欢使用 libGDX Tile 地图设计地图,使用像 Tiled Map Editor 这样的地图编辑器。非常灵活。

libGDX 瓷砖地图: https://github.com/libgdx/libgdx/wiki/Tile-maps

平铺地图编辑器: http://www.mapeditor.org/