Design methodology of multimedia applications for gaming engines with a component-oriented architectural stile

V.M. Bezditnyi, О.V. Chebanyuk

Abstract


The article presents the methodology of designing multimedia applications for game engines with a componentoriented architectural style. The work emphasizes the importance of choosing the appropriate architectural pattern, taking into account the features of modern game engines such as Unity, Unreal Engine and Godot Engine. The key problems and challenges associated with the design of flexible and scalable architectures are indicated. The life cycle model of the user interaction session with the application is described, which includes three main stages: Bootstrap, GameLoop and Dispose. The importance of controlling transient processes between life cycle states to ensure the correct functioning of the application is shown. For a better organization of the interaction of services, the mathematical apparatus of the theory of categories and sets is applied, which allows you to clearly define and manage dependencies and relationships between components. The advantages of using category theory for modeling and managing data flows and dependencies in the system, in particular through functors and monads, are described. These approaches enable the creation of adaptive and scalable systems that are easy to maintain and extend. The work contains practical recommendations for designing the architecture of game applications, taking into account the specifics of component-oriented and service-oriented architectural styles. The need for regular review and updating of the project architecture in accordance with changes in requirements and operating conditions is substantiated. A methodology is proposed, which is a theoretical basis for the development of flexible architectures of multimedia applications. It takes into account the specifics of component-oriented and service-oriented architectural styles, as well as the peculiarities of the functioning of game engines. Examples of the practical application of the proposed theoretical approaches in real projects are also considered in the work, which demonstrates their effectiveness and applicability in various contexts of game application development. These examples include concrete implementations of patterns, state management using the State Machine, and optimizing interaction between components through Service Locator and Dependency Injection.

Prombles in programming 2024; 2-3: 92-98


Keywords


game engine; design patterns; Unity; service; category theory

References


Kaushal Kishor, Rupa Rani, Atul Kumar Rai. 3D Application Development Using Unity Real Time Platform. Proceedings of Fourth Doctoral Symposium on Computational Intelligence. 2023. pp. 665-675.

Using the Game Engine Unity Efficiently in Teaching: Development of a fully-automated webserver-based build pipeline / P. Mosler et al. eCAADe 2023: Digital Design Reconsidered, Graz, Austria, 20–22 September 2023. https://doi.org/10.52842/conf.ecaade.2023.2.883

Mobile Game Development Using Unity Engine. Methodologies and Intelligent Systems for Technology Enhanced Learning, Workshops - 13th International Conferenc. 2023. pp. 129–138.

Sufyan bin Uzayr. Mastering Unity: A Beginner's Guide (Mastering Computer Science) 1st Edition. CRC Press, 2022. 260 p.

What is service-oriented architecture (SOA) https://www.ibm.com/topics/soa

GitHub - modesttree/Zenject: Dependency Injection Framework for Unity3D. GitHub.URL: https://github.com/modesttree/Zenject

About | VContainer. About | VContainer. https://vcontainer.hadashikick.jp/


Refbacks

  • There are currently no refbacks.