a positive impact on the productivity of game devel-
opment by using MDE. The main difference from our
approach is that they have aimed at assisting devel-
opers to obtain safer and better code, whilst our main
goal has been to abstract from programming issues so
that game designers are able to create games without
the need of writing any code.
7 CONCLUSIONS
MDE-based game development is not novel. The
main difference of our approach to others is that we
offer an abstraction of game programming aiming
at assisting novice game designers in creating their
games, without the need of changing the generated
code. Although this work is limited to the scope of
game development for the Unity engine, the results
presented here offer ample opportunities for reusabil-
ity, since we believe that they can be easily ported to
other engines and/or development methods. There-
fore, this approach has also potential for facilitating
interoperability of game engines.
In this paper, we claim that MDE can enable game
development without any manual code implementa-
tion, and that MDE allows faster creation of games.
Further, we argue that the UgameFeature DSL is sim-
ple enough for novice users to understand, yet use-
ful enough to represent simple games. Although in
this project we showed that this DSL allows the rep-
resentation of some popular (simple) games, future
work should include a usability evaluation with pro-
fessional game developers.
UgameFeature has limitations and its metamodel
should be improved to address them. The most im-
portant is the metamodel simplicity, as it allows to
model only a limited number of games. For example,
right now it is not possible to model multiple levels,
changing scenarios or animations. An improved ver-
sion of this language with these capabilities will allow
designers to model more elaborated games.
Alternatively, one could define an even more ab-
stract metamodel with concepts that are not neces-
sarily inspired by game engines, but in collaboration
with game developers, possibly through the develop-
ment of a game ontology. Instances of this ontology
could then be transformed to models that can be used
to generate code that runs in some game engine, as
the UGameFeature metamodel that allows the game
to be implemented in Unity. This discussion leads
to a more fundamental question in MDE, which is
how to determine the number of intermediary mod-
els that are required to transform an abstract model
that is sufficiently close to the ’world of the domain
expert’ (game designer in this work) to the most con-
crete code that can be executed in some runtime envi-
ronment.
REFERENCES
Abbadi, M. (2017). Casanova 2, A domain specific lan-
guage for general game development. PhD thesis.
Abbadi, M., Di Giacomo, F., Cortesi, A., Spronck, P.,
Costantini, G., and Maggiore, G. (2015). Casanova:
A simple, high-performance language for game devel-
opment. In Joint International Conference on Serious
Games, pages 123–134. Springer.
Aouadi, N., Pernelle, P., Ben Amar, C., Carron, T., and Tal-
bot, S. (2016). Models and mechanisms for imple-
menting playful scenarios. In 2016 IEEE/ACS 13th In-
ternational Conference of Computer Systems and Ap-
plications (AICCSA), pages 1–8.
Brambilla, M., Cabot, J., and Wimmer, M. (2017). Model-
Driven Software Engineering in Practice. Morgan &
Claypool Publishers, 2nd edition.
Di Giacomo, F. (2018). Metacasanova: a high-
performance meta-compiler for domain-specific lan-
guages. PhD thesis.
do Prado, E. F. and Lucredio, D. (2015). A flexible
model-driven game development approach. In 2015
IX Brazilian Symposium on Components, Architec-
tures and Reuse Software, pages 130–139.
Furtado, A. W. B. (2012). Domain-Specific Game Develop-
ment. PhD thesis.
Geisler, B. (2019). GAMESPECT: A Composition Frame-
work and Meta-Level Domain Specific Aspect Lan-
guage for Unreal Engine 4. PhD thesis, Nova South-
eastern University.
Matallaoui, A., Herzig, P., and Zarnekow, R. (2015).
Model-driven serious game development integration
of the gamification modeling language gaml with
unity. In 2015 48th Hawaii International Conference
on System Sciences, pages 643–651.
Object Management Group (2016). Meta Object Facility
(MOF) 2.0 – Query/View/Transformation specifica-
tion. Standard formal/2016-06-03, Object Manage-
ment Group.
Toftedahl, M. (2021). Which are the most commonly used
game engines? Available on the site https://www.
gamedeveloper.com/.
Wijman, T. (2021). Global games market to generate $175.8
billion in 2021. Available on the site https://newzoo.
com/.
Zhu, M. and Wang, A. I. (2019). Model-driven game de-
velopment: A literature review. ACM Comput. Surv.,
52(6).
MODELSWARD 2022 - 10th International Conference on Model-Driven Engineering and Software Development
378