Model-Driven Game Development Addressing Architectural Diversity and Game Engine-Integration
MetadataVis full innførsel
Model-Driven Game Development (MDGD) is an emerging research field, which uses models to specify some or all of the game elements that traditionally had been manually coded. The PhD thesis presents research in the MDGD domain, which is intended to push MDGD further towards industrialization by reducing two gaps: 1) The integration of MDGD tools and game engines, and 2) The support for a diversity of game architectures. These gaps have been identified through a literature review of existing MDGD approaches, which is also documented in the thesis. To reduce the first gap, the model-driven approach Engine Cooperative Game Modeling (ECGM) has been proposed, which uses a run-time game engine as the base for building a domain framework, and engine tools together with MDGD tools for creating game code and data. The code generator generates both game code and level data from game models, making the game models operable in the engine tools. ECGM has been evaluated through being instantiated with a Domain Specific Language (DSL), Reactive AI Language (RAIL) tools, and the commercial game engine Torque 2D. The DSL and engine were used to develop a prototype game, whose evaluation showed that ECGM can significantly improve the productivity and enable an efficient workflow. To reduce the second gap, the game architecture framework Game Worlds Graph (GWG) has been proposed. GWG has then been used as the conceptual base for a MDGD approach supporting a diversity of game architectures. The GWG-based MDGD approach employs the Global World, Local World, and Connector Type concepts in modeling languages, adding the architectural information to the modeled game elements, with which code for different architectures can be generated. To evaluate the approach, a DSL and its tool-chain were created following the approach, and a prototype game supporting three game architectures were developed. The results of the prototyping showed that the MDGD approach and the DSL resulted in significant improvement in productivity and workflow efficiency. Apart from providing a major research contribution bridging the two gaps described above, the GWG framework itself is a valuable research contribution. The framework can be used for 1) analyzing and classifying existing game architectures, which was proven through a systematic review of 40 game architectures, 2) exploring future architectures resulting in the design of a new game architecture, and 3) aiding MDGD. The RAIL and an extended version of RAIL are also themselves valuable research contributions. The RAIL is a DSL for modeling high-level AI in action/adventure games, and the extended RAIL adds network architecture support to RAIL. Both DSLs are supported by their tool-chains including a model-editor, a semantics validator, and a code generator. These two versions of RAIL can be reused in related MDGD projects or be used as the reference DSLs.