英语原文共 19 页,剩余内容已隐藏,支付完成后下载完整资料
武汉理工大学毕业设计(论文)
目 录
Building a Game Engine : A Tale of Modern Model-Driven Engineering 3
B. The PhyDSL-2 Game-template Architecture 11
II. MODERN MODEL-DRIVEN ENGINEERING 15
III. CONCLUSIONS AND FUTURE WORK 18
Building a Game Engine : A Tale of Modern Model-Driven Engineering
Victor Guana
Department of Computing Science
University of Alberta
Edmonton, AB. Canada
Eleni Stroulia
Department of Computing Science
University of Alberta
Edmonton, AB. Canada
Vina Nguyen
Department of Computing Science
University of Alberta
Edmonton, AB. Canada
Abstract
Game engines enable developers to reuse assets from previously developed games, thus easing the software-engineering challenges around the video-game development experience and making the implementation of games less expensive, less technologically brittle, and more efficient. However, the construction of game engines is challenging in itself; it involves the specification of well defined architectures and typical gameplay behaviors, flexible enough to enable game designers to implement their vision, while, at the same time, simplifying the implementation through asset and code reuse. In this paper we present a set of lessons learned through the design and construction PhyDSL-2, a game engine for 2D physics-based games. Our experience involves the active use of modern model-driven engineering technologies, to overcome the complexity of the engine design and to systematize its maintenance and evolution.
I. INTRODUCTION
Building video games is an effort-intensive and error-prone software-development task [1] [2]. In recent years, landmark papers have described the need of tackling the complexity of implementing engaging video-game designs [3] [4] and, to that end, a variety of game engines have been developed to provide developers with environments in the context of which to reuse gameplay production assets [5]. Such environments favour the reuse of off-the-shelf components, thus avoiding the need of building software assets from the ground up for individual titles [5]. Furthermore, game engines ease many of the software-engineering challenges around the video-game construction experience. They make the implementation of complex gameplay designs less expensive, less technologically brittle, and significantly more efficient. In this paper, we argue that many of these advantages stem not only from the active reusability policies that game engines promote, but from an effective use of game-authoring environments that facilitate the translation of gameplay mental models into computational artifacts that can be compiled and executed.
In [6], Johnson-Laird presented mental models as the main concept behind human reasoning. Johnson-Laird argued that mental models are key to capture human perception, imagination, and structural understanding of reality. In the context of video-game development, game developers implement gameplay designs using mostly general-purpose programming languages. In this process, game developers have to translate their gameplay mental models into the operational semantics of a programming language. This task is cognitively challenging and often frustrating for developers, since general programming languages are not designed to capture the gameplay mechanics in the developersrsquo; vision of the game. The semantic gap between the developersrsquo; mental model of a game and the implementation artifacts that make this model executable, poses significant challenges to developers when reflecting about a gameplay design. This includes, but is not limited to, the developerrsquo;s ability to reason about how faithful is the implementation of a game in relation to the developerrsquo;s original vision of the title. We believe it is the role of the game engine architects to provide adequate development interfaces, and to enable game designers to specify gameplay designs using semantics analogous to their gameplay mental model.
The software engineering principles behind the implementationof game engines have not been properly documented. This is mostly due to the proprietary and non-disclosure nature of this type of software systems [3]. However, Bishop [5] andGregory [7] describe generic features that any game engineshould support, namely, scene and rendering management, collision and rigid body mechanics, and human interfacemanagement. In this paper we extend the aforementionedfeature set, and propose a generalizable architecture for 2Dphysics-based games.
The contribution of this paper is twofold. We first report how we designed and implemented a domain-specific language that enables developers to naturally define mental models of 2D physics-based games using high-level semantics, well al
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[141424],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。