Я создаю простую игру Zelda-esque сверху вниз в libgdx, и я хочу реализовать основанные на тайлах подземелья, которые генерируются процедурно, подобно этому.
В Libgdx есть класс TiledMap, который, как мне кажется, соответствует моим потребностям, однако документация вне официальных документов предполагает, что TiledMaps можно использовать только в сочетании с файлами .tmx или, другими словами, с заранее разработанными картами. Я провел большое количество поисков в Google, но безрезультатно, поэтому я прошу здесь, в крайнем случае, надеясь, что у кого-то есть опыт использования libgdx для динамически генерируемых карт тайлов.
Изменить: Могу ли я использовать StaticTiledMapTiles в сочетании с учебником, с которым я связан выше, для достижения моей цели?
Спасибо!
Ответы:
Вы можете создавать мозаичные карты без использования .tmx.
источник
.tmx
файла из libgdx github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/… . Спасибо.Основываясь на совете / r / gamedev , я решил отказаться от использования встроенных классов libgdx TiledMap и т. Д. И просто создать свой собственный.
Если потребуется, я могу вдаваться в подробности, но вот что я сделал, по сути.
1. Создайте подземелье, используя алгоритм, с которым я изначально связан, и сохраните координаты тайла (не координаты пикселей), используя
Coordinate
класс, созданный в aHashMap<Coord, MapTile>
.MapTile
это просто класс, который имеет данные о типе плитки.2: в
draw()
функцию моего основного класса я добавил следующий кодКоторый перебирает каждый
Coordinate
вdungeonMap
и рисует плитку (если координата находится в усечении камеры) с глобальнымtileSize
смещением.источник