

Procedural City Generation - t-mw
http://tmwhere.com/city_generation.html

======
pests
If you like procedural generation check out [0]. His recent blog posts have
been about his Minecraft-like voxel engine (currently being used for Everquest
Landmark I believe) but he has a lot of great gems in his archives.

Two recent articles about his language to randomly generate architecture, and
two older ones about city generation:

[http://procworld.blogspot.com/2014/11/cantor-
city.html](http://procworld.blogspot.com/2014/11/cantor-city.html)

[http://procworld.blogspot.com/2014/11/life-without-
debugger....](http://procworld.blogspot.com/2014/11/life-without-
debugger.html)

[http://procworld.blogspot.com/2011/07/screenshots-of-
buildin...](http://procworld.blogspot.com/2011/07/screenshots-of-building-
scopes.html) \- Builds a city over rocky terrain.

[http://procworld.blogspot.com/2011/07/city-
lots.html](http://procworld.blogspot.com/2011/07/city-lots.html)

The video in the second one is really cool from a programming and debugging
perspective.

[0] [http://procworld.blogspot.com](http://procworld.blogspot.com)

ed: Added more city-generation links.

------
stcredzero
I was discussing procedural city generation with a graphics person awhile
back. One of the things we realized is that procedurally generated cities
almost always feel "wrong" because real life cities generally have a mishmash
of dozens of general architectural "styles" based on various quirks of
history.

One example: in Cincinnati Ohio, working class houses in certain neighborhoods
have _stained glass windows_. It's usually only one or two small ones, but
they're there in certain neighborhoods because of a stained glass artisan
"scene" that arrived on a wave of German immigrants. Another quirk about
Cincinnati: there are lots of houses that are quite narrow for their plan
area, because taxes were based on the width of the building on the street.
There are quirks like these that cause a city to be a geographically
differentiated patchwork of different styles.

~~~
bronz
Where can I learn more about the forces underlying the topography of cities? I
find the connection you described between house width and taxation to be
fascinating.

~~~
GuiA
The Death And Life of Great American Cities might overlap with and be a good
starting point for what you're looking for.

~~~
bronz
Thank you very much.

------
MilesTeg
Reading the title I immediately thought these set of articles on procedural
city generation. It's about the visual appearance of a city but very
interesting nonetheless.

[http://www.shamusyoung.com/twentysidedtale/?p=2940](http://www.shamusyoung.com/twentysidedtale/?p=2940)

~~~
robgough
And I thought of Introversion's posts on their now-cancelled subversion game
[http://www.introversion.co.uk/subversion/](http://www.introversion.co.uk/subversion/).
Particularly the early posts, though I think this is the last one they did
about the city generator:
[http://forums.introversion.co.uk/viewtopic.php?t=41634](http://forums.introversion.co.uk/viewtopic.php?t=41634)

------
drewda
Or, if you'd like to buy this off-the-shelf, the second author of the cited
paper went on to co-found a company called Procedural, which was bought by
Esri (the geo-spatial tech giant). Their work is still available as the City
Engine product:
[http://www.esri.com/software/cityengine](http://www.esri.com/software/cityengine)

------
DangerousPie
Bandwidth exceeded, cache here:
[http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://tmwhere.com/city_generation.html&ie=utf-8&oe=utf-8&gws_rd=cr&ei=xzrhVObjLcjV7QaGwYGIDA)

Looks like some parts are missing though.

~~~
t-mw
Sorry, I ran into some unexpected bandwidth limits. I've put up a mirror here:
[http://tmwhere.nfshost.com/city_generation.html](http://tmwhere.nfshost.com/city_generation.html)

------
mjn
Relatedly, I found this survey of different methods for procedural city
generation (template-based, agent-simulation-based, etc.) to be informative:
[http://www.citygen.net/files/images/Procedural_City_Generati...](http://www.citygen.net/files/images/Procedural_City_Generation_Survey.pdf)

~~~
frik
Excerpt: _Road networks are a key aspect of city character and identity. Road
networks are difficult to generalize since they are an interwoven component of
a complex system. When viewing road networks from a map or city plan a number
of patterns can be observed. It is these patterns that are key for procedural
generation as they encode the structure of the road network._

Roads and rivers are the hard part, placing buildings next to it based on
templates is easier.

------
Animats
There are lots of programs which generate a semi-plausible city map, perhaps
filled with generic buildings. But so far nobody seem to be able to generate
something that looks even vaguely convincing from street level.

It would be fun, and even useful, to have a procedural storefront generator.
One that constructs storefront styles, signage styles, door styles, and window
displays. Use images from a street view program to train a machine learning
algorithm as to what various parts of cities look like. Don't just use
existing storefront images; build them up in 3D from door, window, sign, and
display components.

------
cfrs
Book on this topic from architecture side: [http://www.amazon.com/Algorithmic-
Architecture-Kostas-Terzid...](http://www.amazon.com/Algorithmic-Architecture-
Kostas-Terzidis/dp/0750667257)

