Settlement Generation

I have up until now generated individual houses placed in a random location within a larger polygon, just like forests and other natural features. Settlements are not natural and they follow some simple heuristics for placing buildings.

In my implementation I have assumed that settlements are represented by a rectangle with a regular size of building plot – a simple grid.

Buildings will be placed within that grid based on their proximity to a road. I use a simple algorithm to generate axis aligned roads like this;

image

This shows a simple 12×12 grid with orthogonal roads (brown). A simple algorithm that places houses next to roads 50% of the time, rising to 80% of the time if there is a house already adjacent seems to give good results. Buildings are shown in black here.

This gives reasonable results when repeated, even with very large and very small grids. This gives a classic “ribbon development” pattern with no settlement nucleation around a natural centre point.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s