I’m working on a procedural city creation tool. I want it to be able to generate cities directly from the Unity Inspector view (at design time, not runtime). I know there are some other applications that generate cities, some realy nice like (http://citygen.crystalballsoft.com/) and some even free (http://arnaud.ile.nc/sce/). But I want don’t want to work with external tools and then have to import those results.
So far I have wat I need in my simple projects, but I thought about publishing this.
Features so far (all directly tweakable from the inspector view):
Use your own building prefabs
4 types of street plans (random, radial, Vonoroi and Manhattan, but only the random one works for now)
Customize the skyline via an animation curve
Randomize the width and heigth of the builings in 3 different regions, depending on the distance from the center
What I haven’t done yet:
Roads, because some free and very good draw road tools are available in asset store
Implement other street plan algorithms
Building prefabs and generation of textures, because some free and very good draw road tools are available in asset store
I thought I would first ask the forum’s feedback so far before doing any more work. If nobody is interested in this I could leave it at that.
Alas, the youtube video is not mine. Looks very cool though.
Yes my system is similar (generate buildings from editor, not while playing), but I plan to genarate the cities based upon an street map (radial like Paris, or more checkerboard like Manhattan etc.). Users can generate these street maps according to some tweakable options. When the streetplan looks ok (lanewidth, nr of highways, randomness of crossroads, …), then the user can start generating buildings. Right now I’m still playing with various options.
Buildings would be generated through L-system OR by use of existing prefabs. So users can use their own buildings. Building width is set by random value between an adjustable max and min. Building height is set by an adjustable skyline curve. I found than a very easy way of controlling the height of all the buildings at once. Buildings can deviate their height from the skyline according to a set % parameter. I also use 3 zones (downtown, city, suburbs) in which these values can be different.
New screenshot:
For now buildings are put on random locations so they still end up in the middle of the road sometimes. I also plan to include that buildings and roads aren’t placed on water an adjust their position according to the terrain and vice versa (so elevating the terrain, elevates the roads and building without having to start over).
I made something very similar to that video (Besides the buildings). It would choose from a building (I think I made about 25) and then place it in its own area (I called them city tiles) after making massive amounts of these (you could choose how many u wanted but usually around 100x100 blocks loaded fast) it then went through and attached pavements to the buildings and then roads between them. It finally went through and placed some people on each street corner which would walk around this city using simple AI and raycasting. The cities ended up being HUGE.
I made it for a parkour prototype game which I later scrapped because it was more fun playing in the city streets the jumping around the buildings (due to lack of creativity in the buildings design).