Générateur de labyrinthe 2d /3d (ensembles de tarjan)

Description

Ce programme permet de générer des labyrinthes, où toutes les cases sont accessibles.
L'algorithme utilisé s'appuie sur les ensembles de Tarjan, expliqué plus bas.
Ce n'est qu'une version simple développée 'objet' qui pourra être intégrée facilement à d'autres projets.

Sur le même algorithme, j'ai fait 2 rendus :

1) un rendu 2D (l'image en preview), qui représente les murs sous forme de trait.
Peut servir pour des impressions de labyrinthes, par exemple

2) un rendu '3D', qui permet de créer un labyrinthe en ASCII. En clair, c'est une base pratique pour les cartes de jeux

Principe de création du labyrinthe :
- au départ, toutes les cellules sont dans un ensemble différent
- on fusionne 2 ensembles qui se touchent (en enlevant le mur entre les deux), et on en fait un ensemble commun
- on répète cette opération jusqu'à ce qu'il n'y ait plus qu'un seul ensemble.
- a ce moment là, le labyrinthe est créé, et toutes les cases sont accessibles de n'importe quelle autre

J'ai essayé d'optimiser un peu la fusion, pour éviter de chercher aléatoirement quel ensemble peut être relié à quel autre.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.