DunGen library - a generator for procedural 3D dungeons

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
Post Reply
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Ho ho ho,

winter is coming and Santa Squarefox has a nice present for you: "DunGen" - a procedural Dungeongenerator library for Irrlicht.
DunGen is a generator for procedural 3D dungeons. Methods of procedural synthesis, such as L-system, Voxels and Hermite-Splines are used to generate these dungeons. These dungeons can be used in computer games and other applications. The generation of a complete dungeon usually takes less than a half minute (under 10 seconds on a modern Core i7 processor).

Features:
  • generation of procedural voxel bases caves, which can be eroded, filtered, warped and smoothed so that they look more realistic
  • generation of procedural corrdiors between cave parts and/or rooms
  • computation of visibility information (can you look through a corridor - yes or no?)
  • place detailobjects (e.g. torches or monsters) in the corridors
  • use .irr scene files to provide roompatterns for your dungeon
The library package contains everything you'll need:
  • the compiled library, including source code in C++ (provided as a Visual Studio 2010 project)
  • a compiled tutorial, including source code in C++ (provided as a Visual Studio 2010 project)
  • a doxygen documentation, compiled as HTML
Here are some screenshots:
Image
Image
Image
Image
Image

The package is downloadable at http://dungen.squarefox.net . Version 1.0 is compiled for and compatible with Irrlicht 1.8.1 .

I hope you enjoy this library!

Kind regards,
Squarefox
CuteAlien
Admin
Posts: 9733
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by CuteAlien »

Nice Screenshots :-)
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Thank you :) !
kklouzal
Posts: 343
Joined: Sun Mar 28, 2010 8:14 pm
Location: USA - Arizona

Re: DunGen library - a generator for procedural 3D dungeons

Post by kklouzal »

Very good work, the roughness of the ground bothers me though. :)
Dream Big Or Go Home.
Help Me Help You.
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Thanks :). The roughness is achieved through a combination of voxel erosion and warping of vertex coordinates when transforming the original voxel cave into a mesh. The shown pictures use smooth warping. It's also possible to deactivate the smoothing via option, then the result is rougher. If you don't use erosion, but smooth warping, then you get smoother caves, as shown in picture 2.
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Hi,

I just released version 1.1 of DunGen. The following changes were made:
  • some refactorings (especially CCorridor) to make code more readable, no changes on functionality here
  • added StartUp/ShutDown functionality, to make more RAM available to user
  • added ClearRoomsAndCorridors function: no need for restart of DunGen, if an other dungeon shall be created
  • added ReadDungeonFromFile function: dungeons can now be read from XML
  • added second tutorial, which shows how to read dungeons from XML
Here is another screenshot:
Image

The package is downloadable at http://dungen.squarefox.net . Version 1.1 is compiled for and compatible with Irrlicht 1.8.1 .

Regards,
Squarefox
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Hi,

I now released version 1.2 of DunGen. The following changes were made:
  • added SetMaterialCustom function, which allows you to use custom materials for the cave and corridors
  • added third tutorial, which shows how to use custom materials
  • added RandomCaves tool, which generates caves from random L-systems and allows you to save them for later usage
The package is downloadable at http://dungen.squarefox.net . Version 1.2 is compiled for and compatible with Irrlicht 1.8.1 .

Regards,
Squarefox
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Hi,

version 1.2.1 of DunGen is now released. The following changes were made:
  • implemented a EnsureIntegrity() function in CVoxelCave to ensure a 3 voxel border, to catch some numerical problems that could lead to crashes when filtering the cave
The package is downloadable at http://dungen.squarefox.net . Version 1.2.1 is compiled for and compatible with Irrlicht 1.8.1 .

Regards,
Squarefox
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Hi,

I released version 1.2.2 of DunGen. The following changes were made:
  • fixed an issue with StartUp(), where several StartUp() calls with no ShutDown() caused a memory leak
  • fixed an issue where detailobjects settings where not overwritten correctly when reading a dungeon from xml
The package is downloadable at http://dungen.squarefox.net . Version 1.2.2 is compiled for and compatible with Irrlicht 1.8.1 .

Regards,
Squarefox
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Hi,

version 1.2.3 of DunGen is now released. The following changes were made:
  • fixed an overlapping polygon in tutorial dungeon 1 by adding adding additional digging depth into the corridor descriptions of this dungeon
The package is downloadable at http://dungen.squarefox.net . Version 1.2.3 is compiled for and compatible with Irrlicht 1.8.1 .

Regards,
Squarefox
Squarefox
Competition winner
Posts: 117
Joined: Tue Aug 19, 2008 6:46 pm
Location: Delta quadrant, Borg nexus 0001
Contact:

Re: DunGen library - a generator for procedural 3D dungeons

Post by Squarefox »

Newest version (1.2.4) is downloadable here: https://github.com/thesquarefox/dungen .
The license was adapted to be fully zlib (as Irrlicht).
Post Reply