所以我正在开发一款游戏,我需要让连接纹理正常工作。
这些地图是随机生成的,所以我所拥有的是一个字节数组,其中应该是哪个图块。
我有一个想法,如果我将每个瓷砖分成4个8x8瓷砖并将它们组合成一个16x16瓷砖,这样我就可以用最少的工作来连接纹理。
所以我的主要问题是如何拍摄带有8x8图块的纹理精灵表,然后拍摄图块并将它们排列成一个16x16图块,以便与StaticTiledMapTile一起使用。
MapLayers layers = map.getLayers();
TiledMapTileLayer baselayer = new TiledMapTileLayer(128, 128, 16, 16);
for (int y = 0; y < LevelHight; y++) {
for (int x = 0; x < LevelWidth; x++) {
Cell cell = new Cell();
Tile tile = getTile(x, y);
cell.setTile(new StaticTiledMapTile(atlas.findRegion(tile.atlasName)));
baselayer.setCell(x, y, cell);
}
}
public Tile getTile(int x, int y) {
if (x < 0 || y < 0 || x >= 128 || y >= 128)
return Tile.rock;
return Tile.tiles[tiles[x + y * 128]];
}
如果您需要更多信息,请与我们联系。