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/
我正在编写一个类似于植物大战僵尸的游戏,我想将其从 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/