Model-Driven Game Development Addressing Architectural Diversity and Game Engine-Integration
Abstract
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.