I’m definitely not expecting miracle answers to this question, what I’m looking for is pretty hard to do procedurally, but I’ve seen people achieve some amazing addons so I wonder to what extent it’s possible and how far anyone has gotten. I want to generate entire 3D levels procedurally based on a random seed or noise, namely buildings with rooms and corridors whether scifi facilities or medieval dungeons. What is the most complex result that is possible with such a system?
This is easy to do for simple layouts: If you only want a one level dungeon with square walls, it’s as simple as iterating over a 2D grid of positions at a given scale and filling each spot with either a cube (walls) if noise > 0.5 or a plane (floor) otherwise. But what to do if you want to produce a random facility with rooms that make sense, platforms and bridges and stairways and doors and windows, textures appropriate for each area, let alone scatter details like objects or items? The system should take a seed as its parameter, alongside any other structural properties that can be customized like the sizes of rooms and their amount versus corridors, as well as a texture set to put over surfaces where each is appropriate.
The best I’m hoping for is something of early 90’s geometric detail, namely the maps Unreal Tournament 99 used to have: Just generate and connect basic rooms of different shapes and sizes, then if the UV maps are set accordingly the fine details can be achieved using textures to get a modern looking result. Geometry wise I’m aiming for something at the level of complexity in this video, it shows a map that that’s generic and polygonal enough to represent something that could be done procedurally, though maybe I’ll be amazed and and there’s a way to make ones that are even more complex and detailed.
For Blender I’m definitely looking at geometry nodes, though amazing as they are I always run into limitations and any complex result requires huge convoluted node configurations: Generating simple greebles is one thing, understanding how to convert a noise texture to rooms is another. It will surely require an addon or script; I’ve seen some amazing addons to generate buildings from meshes and automatically place door or window prefabs, but generating actual rooms in a logical pattern is something different. If any such extension is compatible with the game engine I might consider creating the whole project in UPBGE, otherwise I could at least export some levels to Godot in any case.