Je crée un jeu Zelda-esque simple de haut en bas dans libgdx, et je veux implémenter des donjons basés sur des tuiles qui sont générés de manière procédurale, similaire à cela.
Libgdx a une classe appelée TiledMap qui semble correspondre à mes besoins, cependant la documentation en dehors des documents officiels suggère que TiledMaps ne peut être utilisé qu'en conjonction avec des fichiers .tmx, ou en d'autres termes des cartes pré-conçues. J'ai fait pas mal de recherches sur Google en vain, donc je demande ici en dernier recours en espérant que quelqu'un ait de l'expérience avec libgdx pour les cartes de tuiles générées dynamiquement.
edit: Puis-je utiliser StaticTiledMapTiles en conjonction avec le tutoriel que j'ai lié ci-dessus pour atteindre mon objectif?
Merci!
Réponses:
Vous pouvez créer des cartes en mosaïque sans utiliser .tmx.
la source
.tmx
fichier à partir de libgdx github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/… . Merci.Sur la base des conseils de / r / gamedev , j'ai décidé de renoncer à utiliser les classes intégrées de libgdx TiledMap, etc. et de simplement créer la mienne.
Je peux entrer dans les détails si on me le demande, mais voici essentiellement ce que j'ai fait.
1: Générez un donjon en utilisant l'algorithme auquel j'étais lié à l'origine et stockez les coordonnées des tuiles (pas les coordonnées de pixels) en utilisant une
Coordinate
classe que j'ai créée dans aHashMap<Coord, MapTile>
.MapTile
est juste une classe qui contient des données sur le type de tuile.2: Dans la
draw()
fonction de ma classe principale, j'ai ajouté le code suivantQui itère sur chaque
Coordinate
dans ledungeonMap
et dessine la tuile (si la coordonnée est dans le tronc de la caméra) avec untileSize
décalage global .la source