Procedural Generation of 3D Roofs using Anchor Structures
This project is already assigned.
Background
Procedural Content Generation (PCG) has the potential to create vast environments, reduce costs and increase the reusability. On the downside, procedural environments are prone to being boring or repetitive. The Games Engineering Group at the Human-Computer Interaction chair researches novel approaches and applications in 3D PCG for the generation of realistic and appealing environments.
In the case of buildings, generating roofs is an important sub-task. Numerous PCG approaches are restricted to rectangular shapes, use predefined building blocks or even omit roofs when tackling building structures. The most common approach to generate roofs is skeleton-based and newer approaches can even handle arbitrary non-overlapping polygons. Yet, these approaches are not flexible enough to produce complex and appealing roofs including dormers and ornaments. Also, they are limited in terms of the creation and merging of different types of roofs.
We have found an anchor-based approach to PCG to be rather expressive in terms of automatic generation of complex shapes, flexible when handling diverse and challenging requirements and accessible in terms of human readability and malleability. Anchors are geometric positions combined with meta information and shape functions. When embedded in a linked data structure, they yield a powerful tool for the procedural generation of 3D content.
The goal of this project is to improve procedurally generated roofs by the application of an anchor-based data structure. Accordingly, the means, needs and capabilities of the anchor-based approach need to be systematically explored in the context of generation of roofs.
First publications about the anchor-based approach to PCG are currently under review and will be made accessible to interested students.
Tasks
In this project, your task will be to adapt the concept of anchors to the procedural generation of roofs for 3D buildings. Starting point will be a single non-overlapping polygon as the only input. Edge cases in terms of the underlying building structure and the geometric complexity of the roof need to be systematically identified and studied.
Prerequisites:
Required:
- Object-oriented programming
- Solid understanding of algorithms and data structures
- Research Methods
Advantageous:
- Experience in Unity 3D and/or C#
- Skills in coordinate geometry
References
Martin Held and Peter Palfrader. 2016. Straight Skeletons with Additive and Multiplicative Weights and Their Application to the Algorithmic Generation of Roofs and Terrains. http://arxiv.org/pdf/1604.03362v1
Contact Persons at the University Würzburg
Damian Kutzias (Primary Contact Person)Games Engineering Group, Universität Würzburg
damian.kutzias@mail.de
Prof. Dr. Sebastian von Mammen
Games Engineering Group, Universität Würzburg
sebastian.von.mammen@uni-wuerzburg.de