Game Engine Framework For Non-Programming

4 downloads 998 Views 517KB Size Report
although to help Non-programming background develop their game, the elements of game ... learn and understand programming [2] as well as to study the objects and .... Android app stores together with built-in support. With an extensive ...
The 2015 IEEE Conference on Open Systems Melaka, Malaysia on 24th – 26th August 2015.

Game Engine Framework For Non-Programming Background Siti Hazyanti Mohd Hashim

Norizan Mat Diah

Fakulti Sains Komputer and Matematik Universiti Teknologi MARA (UiTM) 40450 Shah Alam, Selangor Darul Ehsan [email protected]

Abstract — Developing games is such a tedious task for NonProgramming background. They need assistance from a game engine to provide them with some elements so that they can easily develop the games despite not having any programming background. Currently game engine are full of programming and coding. So, although to help Non-programming background develop their game, the elements of game engine are improvise. The methodology involved are conducting preliminary research, identifying game engine elements, identifying research model, and obtaining research findings. This research will focus on game engine elements that help Non-programming background in developing games. The outcome will formulate a framework of game engine elements for Nonprogramming background. Keywords—game engine; game; game element, Non-Programming background

I.

INTRODUCTION

In recent years, there are numerous games available in electronic or digital format. Some may be distributed commercially and many others are available to be played online or can be downloaded at no cost [1]. A programming skill is important in developing games. A lot of Non-programming background out there want to develop games, however, they do not have any programming background and do not have any programming experience. Thus, it is very difficult for them to learn and understand programming [2] as well as to study the objects and features of game engines used before continuing with the game development. Currently, game engines are mostly full of programming language. But for non-programming background, they do not know about coding and programming. Furthermore, current game engine having limitation, this current game engine does not allow game creator to take as much control as pure coding would. Some of current game engine, the source code are not available. So, this will face problem to non-programming background because of they do not know about programming at all [3] [4]. The purpose of this research is to investigate the framework of game engine elements in developing games for those without programming background. This is to enable them to easily develop games and to complete the development in shorter times. The steps involved are conducting preliminary research, identifying game engine elements, identifying research model, and obtaining research findings. This study will focus on the game engine elements in developing games. The outcome will

Fakulti Sains Komputer and Matematik Universiti Teknologi MARA (UiTM) 40450 Shah Alam, Selangor Darul Ehsan [email protected]

formulate a framework of game engine elements for Non-programming background.

II.

GAME ENGINE FOR NON-PROGRAMMING BACKGROUND

Non-programming background are those without any experience on information technology. When Non-programming background want to develop games, they look for the simplest game engine among those available game engines. As a matter of fact, the Non-programming background should be provided with a simple game engine so that it will be much easier for them to develop and complete their games within a shorter period of time[5][6]. Those Non- programming background prefer game engines that provide tutorials or guidelines and those that enable them to express their creativity without having to code in order to make it easier for them to develop games [7][8]. From the perspective of Non- programming background, the game engine elements are programming language. Some researchers said that there is no need for programming language and some others said to use programming language minimally. A. Programming language Programming language is such an important element in developing games. For Non-programming background, they prefer no programming language. It is because they have the perception that programming language is difficult as they do not have any programming language experience. Programming and scripting are very difficult to master, even for experienced coders. There are so many coding and scripting languages and each one creates endless possibilities to compile a program [9]. Programming without coding technology helps Nonprogramming background to create applications without actually having to know the code that works behind the graphical user interface [10] [9]. Programming without coding technology provides Non-programming background with a reliable environment for creating applications without having to know the code that works behind, thus giving them the opportunity to easily study and learn the basic concepts that support each programming language. [9] It means that Non-programming background can develop their own multiplatform games without any issue [11]. Furthermore, some of the researchers said that game engines should minimize the use of programming language. It is easy to learn and games can be developed in very less line of codes [12].

B. Easy To Use The easy to use elements can be categorized into four types. They are drag and drop, tutorial, tool and multiplatform export. 1) Drag and drop: Non–programming background prefer drag and drop game styles very much. They feel that drag and drop game development is faster and less errors when using it, thus, it is preferred over the point and click interaction style [13] [14]. In order to achieve this, the novice developer can simply drag and drop actions into events [14]. This allows them to create a great game without programming or just some minimal and often optional scripting. 2) Tutorial: Tutorial is particularly targeted at people with little or no programming experience. Even if they are not programmers, the tutorial can be very useful for Nonprogramming background in developing their games. Beginning programmers often fall into the trap of randomly trying different special words and combinations of words they've been taught in attempts to solve the problems they've been given. Beginners' tutorials do not seem to help much by delving too quickly into the code, such as Sun's own set of spotty tutorials [15]. 3) Tool: The tool guide is primarily for those who have absolutely no computer science skills, have never programmed anything in their life and think that it is beyond their ability to do so [16]. The following tools will help non-programming background go from no coding or development experience to having finished their first prototype. Most of tool come prepackaged with sample games, and one of the best ways to learn a new game development tool is to muck around with them, take them apart, and see how they work. The tools will help Nonprogramming background go from no coding or development experience to having finished their first game [17]. 4) Editor: Game Editor is an open source game design software that gives Non-programming background the power to create the games of their dreams. Unlike other game creation tools, it gives them the chance to get and change the source code of the game creator and design and develop 2D games for personal computers as well as mobile devices [18]. Game Editor is designed to develop portable games across all popular platforms, including Windows, Linux, Windows Mobile-based Smartphones, iOS, and Android [18]. For the Non-programming background, Game Editor can be used to create simple games by applying easy point and click strategies and no programming is required [18]. C. Multiplatform export Multiplatform export is another game engine element for Nonprogramming background. It refers to the conversion of content so that it can be displayed on any mobile device [19]. By using game engine, Non-programming background can export their games to most major platforms. They can easily share their creations by publishing them at their own websites such as Chrome Web Store, Facebook and others. They can also export their games to desktop PC, Mac and Linux apps. Furthermore, they can also be part of the popular iOS and Android app stores together with built-in support. With an extensive platform support they can assure that players will have access to their games regardless where they are [20].

III.

Figure 1. Methodology of the research

A. Conducting Preliminary Research After the topic is identified, the research begins by gathering the information related to game engine elements needed by Nonprogramming background to develop games. This can be achieved by reviewing documents that are available on the internet. The documents include related journals, white papers, previous theses, and articles. By reviewing all these documents, it will help the researcher to identify the research problems. B. Identifying Research Model By conducting the intensive literature review, all the game engine elements that have been identified before will be mapped to form a research framework. The conceptual framework is designed to determine the game engine elements for Nonprogramming background to develop games. It discusses the inter-relationships among the game engine elements. It helps Non-programming background to develop games easier. C. Identifying Game Element After identifying the research model and requirements, the game engine elements are being identified. The game engine elements for this research are: TABLE I. SUMMARY OF GAME ENGINE ELEMENTS FOR NONPROGRAMMING BACKGROUND TO DEVELOP GAMES

Reference

METHODOLOGY OF THE RESEARCH

The steps used in assisting Non-programming background to develop games include conducting preliminary research, identifying research model, identifying game engine elements for those without programming background.

Dusty (2014) Souri (2013) Ravi Kumar (2013)

Programming Language No or Minimal Programming Language

Easy to Use Drag and Drop

√ √ √



Tutorial

Tool

Editor

Multi Platform Export

Emanuele Feronato (2011) Bo Moore (2014) Dusty (2014) Jason Astle Adam (2012) Overmars , M. (2004) Sara Angeles (2013) Andrew Gallant (2013) Neil Hughes (2012) Admin (2012) Emanuele Feronato (2011) Carla Schroder (2012) Gerling, Klauser, Niesenha u (2011) Brandon Widder (2013) Zoe Quinn (2013)

√ √ √ √







√ √ √ √





√ √ √ √ √

Figure 2. Framework of game engine elements for Non-Programming background



D. Research Finding It is found that Non-programming background must have at least a beginner level of game creation knowledge. As they are normally not from the information technology or computer science background, they may face difficulties in using game engines that require programming skills. The game engines should have a tool editor with less programming language to create games. Based on the framework of game engine elements in Figure 2, the game engine elements required for Non-programming background to develop games can be categorized into three categories namely, no programming language, easy to use and multiplatform export.

IV.

CONCLUSION

There is a framework for game engine elements that can be used by Non-programming background to easily develop their games although they do not have any programming background. Based on the result, it shows that the framework of game engine elements for Non-programming background can be used easily. These game engine elements can help Non-programming background to develop their games and to complete the development in shorter period of time. From current game engine element, the element of game engine have been improve and the element are focus to non-programming background. The methodology use are conducting preliminary research, identifying game engine elements, identifying research model, and obtaining research findings. The outcome will formulate a framework of game engine elements for Non-programming background. As a conclusion, the required game engine elements for Nonprogramming background are categorized into no programming language, easy to use and have multiplatform export. For easy to use element, the element is categorizes into four element that are having some tool, editor, tutorial and drag and drop the object features.

REFERENCES [1]

norizan mat diah, yuraidza yahya(2009) Low cost game engine for educators http://www.academia.edu/683536/Low_Cost_Game_Engine_for_Educators [2] W.Schmidt(2015) Programming for non-programmers: its time you learn http://tech.co/one-month-programming-for-non-programmers-2015-02 [3] Dwayne, (2014) http://ilikekillnerds.com/2014/03/lessons-learnedtips-tricksusing-construct-2/ [4] Obsidian minor (2012) http://www.minecraftforum.net/forums/offtopic/computers-science-technology/488009-game-maker-the-flaws-and-theadvantages-from-the [5] Brom, C., Gemrot, J., Bida, M., Burkert, O., Partington, S. J., & Bryson, J. (2006, November). Posh tools for game agent development by students and non-programmers. In The Nineth International Computer Games Conference: AI, Mobile, Educational and Serious Games (pp. 126-133). University of Bath. [6] Rick Leander how to gain programming experience http://work.chron.com/gain-programming-experience-20001.html [7] Blow, J. (2004). Game development: Harder than you think. Queue, 1(10), 28. [8] Gerling, K. M., Klauser, M., & Niesenhaus, J. (2011, September). Measuring the impact of game controllers on player experience in FPS games. InProceedings of the 15th International Academic MindTrek Conference: Envisioning Future Media Environments (pp. 83-86). ACM. [9] Mark Wilcox (2014) http://www.developereconomics.com/top-gamedevelopment-tools-pros-cons/ [10] Tejas jasani (2014) http://venturebeat.com/2014/08/20/the-top-10-enginesthat-can-help-you-make-your-game/ [11] Kaitila, C. (2011). Adobe Flash 11 Stage3D (Molehill) Game Programming Beginner¿ s Guide: A Step-by-step Guide for Creating Stunning 3D Games in Flash 11 Stage3D (Molehill) Using AS3 and AGAL with this Book and Ebook. Packt Publishing Ltd.

[12] Brandon Widder (2013) How to make video games(experience not required) http://www.digitaltrends.com/gaming/how-to-make-a-video-game/ [13] Johnson, W. L., Vilhjálmsson, H. H., & Marsella, S. (2005, May). Serious games for language learning: How much game, how much AI?. In AIED (Vol. 125, pp. 306-313). [14] Zoe Quinn (2013) A beginner’s to guide making your first video games http://kotaku.com/5979539/a-beginners-guide-to-making-your-first-videogame [15] Andrey Fercalo (2014) Programming without code technology http://www.softpedia.com/get/Programming/Coding-languagesCompilers/Programming-Without-Coding-Technology.shtml

Ravi Kumar (2014)Best Free Multiplatform Game Development Engines [16] for Non-Programmers http://www.geteverything.org/best-freemultiplatform-game-development-engines-for-non-programmers/ [17] Andrew Gallant (2013) Tutorial for non-programmer https://github.com/BurntSushi/nflgame/wiki/Tutorial-for-non-programmers:Installation-and-examples [18] Neil Hughes(2012) Apple want to make it easy for non0programmers to build iOS apps. http://appleinsider.com/articles/12/04/12/apple_wants_to_make_it_easy_for _non_programmers_to_build_ios_appsa [19] admin(2013) the cross platform game editor http://gameeditor.com/Main_Page [20] Anderson, E. F., Engel, S., Comninos, P., & McLoughlin, L. (2008, November). The case for research in game engine architecture. In Proceedings of the 2008 Conference on Future Play: Research, Play, Share (pp. 228-231). ACM.