I did an undergraduate project based on the same paper as this (not nearly the same quality, but similar enough if you squint).
The procedural method used for this kind of generation is really powerful -- you usually see L-Systems being used to create basic sort of fractals but these sort of implementations can become pretty smart. For example, you can provide a height map of the terrain, and make it so that the roads find smooth paths down hills.
And then that's before you realise that the buildings themselves can be generated via rules which describe how to make buildings. And then, the layout of rooms in a building, and the layout of furniture in each room. There's some really impressive potential here if a group of people were devoted enough.
The procedural method used for this kind of generation is really powerful -- you usually see L-Systems being used to create basic sort of fractals but these sort of implementations can become pretty smart. For example, you can provide a height map of the terrain, and make it so that the roads find smooth paths down hills.
And then that's before you realise that the buildings themselves can be generated via rules which describe how to make buildings. And then, the layout of rooms in a building, and the layout of furniture in each room. There's some really impressive potential here if a group of people were devoted enough.
Another good paper is: http://peterwonka.net/Publications/pdfs/2006.SG.Mueller.Proc...