top of page

Residential housing

  • White Vertex Studios
  • 26. Apr.
  • 3 Min. Lesezeit

Another central goal of “Renaissance Builders” is to create winding, organic inner cities in which spartan farmhouses, proud craftsmen's houses and luxurious aristocratic palaces are lined up close together along the streets and convey a lively, medieval atmosphere. The algorithm for generating houses and residential areas is therefore an essential component that significantly shapes the visual style of the game. It should offer players maximum freedom in the design of building plots and at the same time automate tasks such as terrain analysis, the division of plots or the creation of continuous house fronts in order to avoid too intensive micromanagement.

Our implementation of the algorithm allows players to define an area for new homes by dragging and dropping four exterior points. The placement tool provides feedback on blocked areas or suitable construction sites at all times.



Simple residential property in a rectangular shape.
Simple residential property in a rectangular shape.

A special requirement is that the properties should be aligned along the streets. So even if the player initially creates simple squares using the outer points, the side of the road should be adapted so that it follows the organic shapes of the path tool.

We achieve this by analyzing all the roads already built in the area. Put simply, we trace all the streets from the starting points of the new plot and compare the resulting shapes with each other. If a shape is recognized as valid, i.e. it runs along a street, the plot area is adjusted accordingly and the front of the plot is routed along the street.


Residential property which follows the shape of the street at the front
Residential property which follows the shape of the street at the front

To optimize performance, we use spatial maps - as with all computationally intensive processes. All information on the position and orientation of streets is stored in an x-y grid with a cell size of 100 meters. When searching for the nearest street, we do not run through all street segments, but only the entries stored in the relevant cells.

We use splines - a function in Unreal Engine for generating organic lines based on Bézier curves - to display property boundaries. While splines are often used for road construction, we also use them creatively in many other areas, including:


  • Road construction

  • Building outlines

  • Garden fences

  • Waypoint calculations in fields

  • Placement of bushes in backyards


Once the plot area has been determined and, if necessary, adapted to nearby roads, the next step is to place the houses. We iterate section by section along the front and try to align as many houses as possible towards the street. The algorithm takes particular account of the terrain, as buildings should not be erected in areas that are too steep.

In contrast to the plots of land that can be freely defined by the player, the residential buildings in “Renaissance Builders” are fixed in size. The combined area of the house and the surrounding area up to the property boundary is called a plot. The total plot area is divided into individual plots to create the possibility of individual gardens. Each plot is surrounded by stone walls reminiscent of the traditional dry stone walls of Tuscany or Umbria. Randomly generated splines are also used here to preserve the organic look.


Residential property with several plots
Residential property with several plots

Our house tool makes it easy to create organic living spaces with just a few clicks. However, it is not yet possible to generate continuous house fronts - a challenge that we will address in the next step.

 
 
 

Aktuelle Beiträge

Alle ansehen
Every beginning has its magic

Tuscany, 1430 Italy is in transition from the Middle Ages to the Renaissance - a time full of upheavals, discoveries and new ideas. While...

 
 
 

Comments


2025 by White Vertex Studios UG (haftungsbeschränkt)

bottom of page