I’m somewhat obsessed by procedural generation for levels (mainly interiors) for Hopper. Just tried another idea which turned out to be… not so easy. Here are screenshots of this experiment :
Well, yes, it’s just a tunnel. The idea was to use agents which would make decisions on the size (and shape) of each tunnel section. Smart agents would be aware whether they were generating rooms or not and would be able to spawn other agents here and there. They would also try to generate small rooms for physics-based doors.
There’s a few problems to solve, though :
*) A structure to avoid inter-penetration. (octree ? bounding box list ? )
*) Shape of “holes”, which are the starting “face” for a new agent.
*) Object placement.
*) Better turns ( pivot or smooth )
*) Texture mapping ( + decals ? )
*) Switching from hexagonal section to octogonal (or pentagonal or square) sections or the other way around.
Another idea for level generation would be to use CSG ( Constructive Solid Geometry ) : Carving rooms into big cubes and keeping only the “interior” faces.