Author:

Linus Biermann
Supervisor:Prof. Gudrun Klinker
Advisor:Daniel Dyrda (@ga67gub)
Submission Date:[created]

Abstract

The development of large-scale video game projects using general-purpose engines can pose significant challenges, with regard to performance and complexity. The primarily single-threaded nature of these engines can introduce CPU bottlenecks in simulation- heavy games, which can degrade the user-experience in these soft real-time systems. Recently, commercial engines such as Unity and Unreal Engine have started investing in technologies based on Data-Oriented Design (DOD) and the Entity-Component-System (ECS) pattern; their alleged goal is to ease the development of projects that have strict performance requirements. This thesis investigates the various aspects surrounding these concepts, such as their origin, usability, and viability for helping developers realize large-scale games. To achieve this, a literature study focusing on the academic and industry literature surrounding these topics was conducted, and Unity’s Data-Oriented Technology Stack (DOTS) and ECS packages are analyzed in detail. This knowledge was then used to prototype various recurring systems in video games, to explore how well these alternative approaches could be employed. Additionally, a design methodology based around a top-down agent-based approach for simulating gameplay systems is introduced, to further reduce simulation load. The viability of these prototypes was evaluated against a number of applicable use cases. The results of this thesis are that these new technologies have the potential to significantly improve hardware-utilization and in turn performance. This can be critical when tackling the development of large-scale simulation-heavy games, or targeting low-power devices, such as handheld consoles or mobile phones. Becoming familiar with this workflow can however take some time, as it may require more in-depth knowledge of low-level hardware, or alternative approaches to developing more complex dynamic systems. The prototypes presented in this thesis show that the development of general-purpose sys- tems is possible withing the constraints that DOTS and ECS impose; the demonstrated ideas also present an opportunity for expansion through future work.

Results/Implementation/Project Description

Conclusion

[ PDF (optional) ] 

[ Slides Kickoff/Final (optional)]