Hello,
I have a question and could use some directions.
I'm trying to devise a way to create a video game level generator with Houdini.
The general idea is that I can set certain variables and/or construction curves.
Input a range of modular building blocks (like rooms, corridors, elevator shafts, stairs corners, etc.) and then Houdini should assemble these components into a playable game space. It should be possible to build in all axis with this (so not just on a flat surface but also with different height levels)?
My understanding of this would be to outfit the modular building blocks with connection points at the doorways. The generator will orient and connect new modules onto previously placed modules. These connection points could potentially have variables like height, width etc. so when a new segment is attached, they will fit one another.
To give you a better idea of what i'm talking about
I was thinking of making it work like this.
Make the generator or the user place a room or corridor somewhere. Then make the generator determine another location within a certain bounding box. The generator will then create rooms and corridors towards that point using the modular building blocks much like how one would assemble a pipeline. Preferably the generator will then loop back to the first room creating a circular path.
When these corridors and rooms have unused doors, repeat the process for a set number of generations until a complex enough level is generated. Then make the generator connect up the remaining openings with one another or seal them off.
Via configuring certain parameters, bigger rooms with more doors could have more importance to the generator and be more likely to have a corridor establish a connection with them.
I'm wondering if Houdini is capable of doing something like this.
If it is, does anyone know how I would go about setting up a system up.
If it isn't, does anyone have a better idea.
Examples or tutorials of a similar system, or anything that can help me reach the required result would be greatly appreciated.
Procedural three dimensional modular assembly - will it work
4645 2 2- hyperforce
- Member
- 16 posts
- Joined: June 2006
- Offline
- kgoossens
- Member
- 289 posts
- Joined: July 2005
- Offline
You could L-systems with attributes on them to later on copy the specific geometry you need.
You could also take this into a forLoop and build your own itteration to “grow” the level. This would allow you to search for self intersections etc..
You could also take this into a forLoop and build your own itteration to “grow” the level. This would allow you to search for self intersections etc..
A computer is almost human - except that it does not blame its mistakes on another computer.
- Allegro
- Member
- 696 posts
- Joined: March 2006
- Offline
-
- Quick Links