Abstract

Game developers often use game engines to efficiently develop games and reduce effort by reusing predefined components. However, game engines are complex and difficult to comprehend to extend and integrate with other components. Unreal Engine is one of the most commonly used open-source game engine which is quite complex and involves thousands of APIs. In this paper, we aim to comprehend Unreal Engine by analyzing its underlying software architecture. We accomplish this by considering the architectural changes across various releases of the GitHub repository of Unreal Engine by using an in-house tool called AC2 which uses call graphs and collaboration graphs. We run this tool on three initial releases of two components of the Unreal Engine and observe two kinds of architectural patterns, namely Event-driven and Hierarchical MVC (Model-View-Controller). We also observe the changes in components across releases. We believe that this preliminary study on Unreal Engine may unveil its architectural design and modules and may aid in better comprehension of this complex and widely used game engine for researchers and practitioners.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.