Automatic Building Generation

The goal of the project is to design and implement a software system that can automatically generate 3D models of buildings that are suitable for use in an interactive real time graphics application such as a game or a virtual reality simulation. The intention is to do this using procedural methods. These are computer graphics techniques that use algorithms to dynamically generate geometry. The motivation for this is to cut down on the content creation costs involved in developing these applications. Specific research questions are:

  • What types of procedural methods are most effective in this context?
  • Is it possible to carry this out rapidly enough within the application in order to accomplish real time generation?
  • Can we produce architecturally valid and visually convincing results?
  • Can the procedural generation system generate buildings at different levels of detail in order to facilitate real time rendering?

Development costs for computer games, and other interactive graphics applications, have spiraled in recent years, and are set to continue to do so for the foreseeable future . The main reason for this is that increases in computing power, on both desktop computers and dedicated game consoles, allow the manipulation and display of more and more complex graphics. This in turn means that the underlying geometry of the game world becomes more detailed and therefore the time and cost of producing it increases accordingly . This game world content is produced by employing large teams of artists and 3D modelers who have to create the content by hand using dedicated software packages such as 3DS Max and hence the costs involved are substantial.

We propose that procedural methods provide an excellent way of alleviating this problem. Procedural methods, in this context, are algorithms or procedures that are designed to generate 3D geometric descriptions of objects. These methods have been used successfully for some time as a means of generating complex natural objects such as plants and terrain, but we suggest that they also have significant potential when it comes to the generation of artificial man-made phenomena. In particular, since many computer games and other interactive graphics applications are situated in urban environments, the design and implementation of a set of procedural methods aimed at the generation of buildings, would prove to be of significant benefit to developers. We already have an ongoing project on procedural city generation which is concentrating on the development of procedural techniques for generating road networks. This new project is designed to complement this by looking at algorithms for the generation of buildings.

We see the advantages of this as follows:

  • Time savings: Any reasonably sized urban environment is going to contain thousands of buildings. Creating these by hand in the traditional manner is time-consuming and costly. A well designed set of procedural methods for automatically generating them will therefore save time and money.
  • Variety of results: Procedural methods that are carefully parameterized can be used to create a vast variety of results. This means that such a system can generate as many different buildings as the developer requires and also can be used to generate different results each time the game is ran.
  • Rendering speedup: Efficiently rendering large-scale urban environments is a problem that has received a lot of attention in the computer graphics research literature. Many solutions involve creating several different versions of each piece of geometry, each of which exhibits a different level of detail (LOD). Detailed geometrically complex models are only used when necessary, that is when the viewer is close enough to notice the difference. If we use procedural methods to generate buildings then we can also potentially tune the procedural methods to automatically generate these different LOD models.

This project commenced in October 2006 with the recruitment of a postgraduate researcher. At present background research is being carried out with a view to creating a prototype application capable of simple building generation. Ongoing results and progress will be reported on this page.

Researcher: Graham Whelan
Project Leader: Hugh McCabe
Funding Agency: Postgraduate R&D Skills Programme
Duration: 2006-2008