Game Engines D&P Apis and Sdks

Total Page:16

File Type:pdf, Size:1020Kb

Game Engines D&P Apis and Sdks Stéphane GOBRON HES-SO – HE-Arc v.2014 Game technologies Game Engines Content Game engines (GE) . Game engines (GE) definition and purpose . Roll-your-own GE - GE dev. design - GE APIs . Mostly-ready GE . Point-and-click GE Today’s main keywords Game engines definition and purpose . Definition . GE purpose . One exception not to use a GE . GE includes . Game development . APIs and SDKs . List of GE . Types of GE Engines are powerful Interaction Explain how your GE help Game engines D&P From… …with… Definition . Game engine (GE) . Def: System designed for video games dev. Most are designed for video game consoles or PCs …to: / http://masseffect.bioware.com Game engines D&P GE purpose Here is the question you must ask yourself: Why pay… . …six programmers… . …for a year… . …to build an engine... …when you can… . …buy 90% of the features… . …from a proven technology… . …for less money… . …and have it NOW ?! E.g. of ref: Jason Gregory. Game Engine Architecture. AK Peters. ISBN 978-1-56881-413-1. Game engines D&P One exception Study hard, really, really hard…! « My 11 yo son likes very much video games and he can draw very well. How can he learn to develop his own GE?» Or «Is it possible not to use GE of any kind and to start from scratch?» Well … I dont’ think so . The exception been… …learning how hard it is Game engines D&P GE includes multiple engines Libs - Sound . Two main engines - Scripting - Animation - Rendering engine, for - Artificial intelligence 2D and/or 3D graphics - Networking including music and - Streaming sound effects - Memory management - Threading - Physics engine - Localization support - Scene graph . And many libraries! Game engines D&P Game development Game ecology in game development . Games are complex Game Recycling is surviving bricks . Recycling code! . By reusing/adapting GE to create dif. games reusable components http://www.gamecareerguide.com/features/529/what_is_a_game_.php Game engines D&P Game spec. Player Game A.I. GE complexity rendering mechanics cameras specific . An architecture that Front end Gameplay foundations Subsystème can be sorted in layers Game Visual effets Scene graph / culling Skeletal Online Audio optimizations animation multi-player Human Low level rendering Profiling & Collision & interface debugging physics device Resources: game assets e.g. 3D model and animation resources Core systems e.g. curves and surface lib Platform independence layer e.g. network (e.g. UDP/TCP) 3rd party SDKs e.g. OpenGL, Boost++ Operating System layer e.g. Win8 Driver & hardware layers Game engines D&P - full architecture, part I Game engines D&P - full architecture, part II Game engines D&P APIs and SDKs Unreal Engine API . Application Programming Interface software interfaces e.g. DirectX, OpenGL . Software Development Kit collection of libraries Unreal . Most GE have both Engine SDK concept Game engines D&P List of GE . Quite a lot indeed See Wiki . Development or pluggings Most are in C/C++ (80%)… At least 65 http://en.wikipedia.org/wiki/List_of_game_engines Game engines D&P Roll-your-own? Types of GE . Many different types . Many levels of programming expertise . Three categories OpenGL - Roll-your-own GE low level - Mostly-ready GE mid level -Point-and-click GE high level Unreal engine Re/use powerful tools? Roll-your-own GE Low level game engine development . Advantage / disadvantage . Usefull prerequested . A. Game engine design The realm of “do it yourself” Event base prog […] . B. APIs DirectX, Open GL […] Roll-your-own sushi… In 3D! Interaction Find some advantages of the roll-your- own GE Roll-your-own GE Advantage / disadvantage . Plus Master everything If not… No software cost Can reach very low level . Minus Require to know/master Must master all aspects involved in - game engine design your game - CG fundamentals experienced programmer “impossible” for big size game development Roll-your-own GE Usefull prerequested . Math Linear algebra Matrices Dif. equations . CS Master a C like language Real-time algorithm Computer graphics AI - 3d System & networks - Multimedia unbelievable HW & device - 763746452 - i - these - drawn . Design/art - 2D & 3D drawing skills actually - are - . Useful option gizmodo.com/wow drawings Liking coffee http:// Roll-your-own GE a. GE development design . The realm of “do it yourself” . Even-based prog . User and system events . Event capture . Callback abstraction . Event management . Real-time loop . Lag and latency . Multi-tasks Game development is not that easy… Roll-your-own GE a. GE dev. design The realm of “do it yourself” . Do it yourself, but not - yourself from scratch!!! - it - do - great . Experienced - programmer only . Potential to achieve …specific… …but efficient… try.html - to - …renderings www.modernisticmama.com/2012/08/4 http:// games . Going deep into “Mom! I made my own Angry Shaders and HW birds game!” . Even artistic rendering Roll-your-own GE a. GE dev. design Even-based prog . Event driven programming System behavior Initialize triggered by events User Does Something or . Event sources Timer Goes Off 1. User 2. System System Updates Roll-your-own GE a. GE dev. design 1. User events Multi-player FPS manage large amount . The OS handles events of user events Hardware interruptions Send to event queue Available to program . Application decides how to use events . APIs can manage events for the program Roll-your-own GE a. GE dev. design 2. System events . From system timer events . Application requests notification at future time . Possible semantic: guarantee arrival before the date fixed after arrival but as soon as possible at the precise moment . App. not interrupted System must often manage a lot of event types must fetch events Roll-your-own GE a. GE dev. design Event capture while ( true ) if ( e = checkEvent() ) . Waiting for switch ( e.type ) … the active events do more work… . "windowing systems" Looking for event provide a function- blocking wait events e = nextEvent(); switch ( e.type ) . Wait / block { case ENUM_1: . Coupling with timers break; case ENUM_2: break; … … default: … Event effects } Roll-your-own GE a. GE dev. design Callback abstraction . Applications register defining treatments to be associated with each event . Correspondence table: Events - Callback . Widely used in GUI "When this button is clicked, call this method” Degree of abstraction . Some systems offer methods "catch-all" Roll-your-own GE a. GE dev. design Real-time loop . Game “heart” . Pace: #of executions /s . called "frame rate” while ( true ) . fps 1. process events “frames per second” 2. update game world 3. render . Not to be mixed with First Person Shooter! Roll-your-own GE a. GE dev. design Latency computation Lag and latency . Latency: time between Process input user action and Frame Event displayed result time Update state time . High latency : Render loss of causality loss of control Process input death of gameplay!!! Lag Frame Update state . Variance in latency time User can adapt to 2 Render lagmax Constant latency fr Not to variable latency Process input 1.5 Up to 300ms? lag Frame average fr . Feeling of being drunk time … Roll-your-own GE a. GE dev. design Multi-tasks . Important: reduce latency between action and consequences at user’s level loop input / rendering must be optimum latency between actions and conse- quences can be larger time between action and reaction time to change animation sequence Latency can kills game play in action game => break in presence “BIP” issue Roll-your-own GE b. APIs . DirectX . OpenGL GLSL . Comparing both APIs . Hardware management . Coordinate systems . Shaders Some choices are difficult Interaction Who . Knows OpenGL . Developped with Direct-X Difference? Roll-your-own GE b. APIs Direct X . API: Microsoft «Direct3D» . Lower layer of XNA - see next section . Language: C / C++ . C# version => XNA . Major components - DirectDraw - 2D Graphics - Direct3D - 3D Graphics - DirectSound - 2D Sound - DirectSound3D - 3D Sound http://www.d-silence.com/feature.php?id=254&pn=1 - DirectMusic – Music - DirectPlay - Network/Multiplayer - DirectInput - Input Devices Roll-your-own GE b. APIs OpenGL . Open and «free» OpenGL . Cross-platform Rendering Pipeline . Language: C The blue boxes are . OpenGL extensions programmable shader and methods: stages Documented But patented!! . E.g. Mesa 3D Learning OpenGL? http://nehe.gamedev.net/ www.opengl.org/wiki/Rendering_Pipeline_Overview https:// Roll-your-own GE b. APIs WebGL HTML5 + OpenGL . Any browser . Any platform . Any OS . No compilation . No plugins . Free . Difficulties HTML + JS + CSS + OpenGL Shader M. Gutierrez Gobron,S. , Language Experienced programmers pratique la par WebGL Roll-your-own GE b. APIs Comparing both APIs . Both render 2D and 3D computer graphics . Direct3D designed to Direct3D OpenGL virtualize 3D hardware interfaces Platform Microsoft Windows Cross-platform . OpenGL designed to Mobile OpenGL for Embedded Direct3D Mobile be a 3D hardware- Platforms Systems, OpenGL ES accelerated rendering Open source or system License Proprietary trademark Roll-your-own GE b. APIs Comparing both APIs Hardware management . Direct3D: developer must manage hardware resources Easy implementation Allow flexibility to allocate resources . OpenGL manage hardware for you . Especially if using GLSL Roll-your-own GE b. APIs Comparing both APIs Coordinate system . OpenGL Right-handed 3D coord. system . Direct3D Left-handed 3D coord. system OpenGL Direct3D – DirectX right-handed left-handed Cartesian
Recommended publications
  • Master Thesis
    Faculty of Computer Science and Management Field of study: COMPUTER SCIENCE Specialty: Information Systems Design Master Thesis Multithreaded game engine architecture Adrian Szczerbiński keywords: game engine multithreading DirectX 12 short summary: Project, implementation and research of a multithreaded 3D game engine architecture using DirectX 12. The goal is to create a layered architecture, parallelize it and compare the results in order to state the usefulness of multithreading in game engines. Supervisor ...................................................... ............................ ……………………. Title/ degree/ name and surname grade signature The final evaluation of the thesis Przewodniczący Komisji egzaminu ...................................................... ............................ ……………………. dyplomowego Title/ degree/ name and surname grade signature For the purposes of archival thesis qualified to: * a) Category A (perpetual files) b) Category BE 50 (subject to expertise after 50 years) * Delete as appropriate stamp of the faculty Wrocław 2019 1 Streszczenie W dzisiejszych czasach, gdy społeczność graczy staje się coraz większa i stawia coraz większe wymagania, jak lepsza grafika, czy ogólnie wydajność gry, pojawia się potrzeba szybszych i lepszych silników gier, ponieważ większość z obecnych jest albo stara, albo korzysta ze starych rozwiązań. Wielowątkowość jest postrzegana jako trudne zadanie do wdrożenia i nie jest w pełni rozwinięta. Programiści często unikają jej, ponieważ do prawidłowego wdrożenia wymaga wiele pracy. Według mnie wynikający z tego wzrost wydajności jest warty tych kosztów. Ponieważ nie ma wielu silników gier, które w pełni wykorzystują wielowątkowość, celem tej pracy jest zaprojektowanie i zaproponowanie wielowątkowej architektury silnika gry 3D, a także przedstawienie głównych systemów używanych do stworzenia takiego silnika gry 3D. Praca skupia się na technologii i architekturze silnika gry i jego podsystemach wraz ze strukturami danych i algorytmami wykorzystywanymi do ich stworzenia.
    [Show full text]
  • A Doom-Based AI Research Platform for Visual Reinforcement Learning
    ViZDoom: A Doom-based AI Research Platform for Visual Reinforcement Learning Michał Kempka, Marek Wydmuch, Grzegorz Runc, Jakub Toczek & Wojciech Jaskowski´ Institute of Computing Science, Poznan University of Technology, Poznan,´ Poland [email protected] Abstract—The recent advances in deep neural networks have are third-person perspective games, which does not match a led to effective vision-based reinforcement learning methods that real-world mobile-robot scenario. Last but not least, although, have been employed to obtain human-level controllers in Atari for some Atari 2600 games, human players are still ahead of 2600 games from pixel data. Atari 2600 games, however, do not resemble real-world tasks since they involve non-realistic bots trained from scratch, the best deep reinforcement learning 2D environments and the third-person perspective. Here, we algorithms are already ahead on average. Therefore, there is propose a novel test-bed platform for reinforcement learning a need for more challenging reinforcement learning problems research from raw visual information which employs the first- involving first-person-perspective and realistic 3D worlds. person perspective in a semi-realistic 3D world. The software, In this paper, we propose a software platform, ViZDoom1, called ViZDoom, is based on the classical first-person shooter video game, Doom. It allows developing bots that play the game for the machine (reinforcement) learning research from raw using the screen buffer. ViZDoom is lightweight, fast, and highly visual information. The environment is based on Doom, the customizable via a convenient mechanism of user scenarios. In famous first-person shooter (FPS) video game. It allows de- the experimental part, we test the environment by trying to veloping bots that play Doom using only the screen buffer.
    [Show full text]
  • 000149644.Pdf
    Mestrado em Multimédia Implementação de Exposições Virtuais em Ambiente Tridimensional em Museus de Ciência e Técnica João Carlos Carvalho Aires de Sousa (070549009) Licenciado (Pré-Bolonha) em Engenharia Eletrotécnica e de Computadores pela Faculdade de Engenharia da Universidade do Porto Dissertação submetida para satisfação parcial dos requisitos de grau de Mestre em Multimédia Dissertação realizada sob a orientação do Professor Doutor António Augusto Sousa, do Departamento de Engenharia Informática da Faculdade de Engenharia da Universidade do Porto e sob a coorientação da Mestre Susana Maria Moreira de Figueiredo Medina Vieira, docente convidada do Departamento de Ciências e Técnicas do Património da Faculdade de Letras da Universidade do Porto Porto, setembro de 2011 II Resumo O estudo realizado na presente dissertação surge da necessidade de agilização do processo de criação de exposições virtuais em museus de ciência e técnica. O principal objetivo deste trabalho consiste em desenvolver um método tecnológico que permita a profissionais de museu a criação, de uma forma fácil e acessível, exposições em ambiente tridimensional. As tecnologias 3D adaptam-se à natureza interativa associada a objetos museológicos de ciência e técnica, e constituem um fator de preferência para a representação das suas exposições em contexto digital, permitindo o acesso aos acervos museológicos sem restrições temporais e de manipulação. A análise teórica da presente investigação revelou que muitos museus de ciência e técnica não apresentam os seus conteúdos digitais numa dinâmica 3D interativa. Por outro lado, constatou-se a grande complexidade e diminuta flexibilidade dos atuais sistemas de criação de exposições e de museus virtuais em contexto tridimensional. A simplicidade, flexibilidade e qualidade gráfica dos atuais motores de criação de jogos de vídeo em ambiente tridimensional, apresentam a capacidade necessária para a sua personalização e reconfiguração num sistema de suporte tecnológico para a criação de exposições virtuais.
    [Show full text]
  • Google Adquiere Motorola Mobility * Las Tablets PC Y Su Alcance * Synergy 1.3.1 * Circuito Impreso Al Instante * Proyecto GIMP-Es
    Google adquiere Motorola Mobility * Las Tablets PC y su alcance * Synergy 1.3.1 * Circuito impreso al instante * Proyecto GIMP-Es El vocero . 5 Premio Concurso 24 Aniversario de Joven Club Editorial Por Ernesto Rodríguez Joven Club, vivió el verano 2011 junto a ti 6 Aniversario 24 de los Joven Club La mirada de TINO . Cumple TINO 4 años de Los usuarios no comprueba los enlaces antes de abrirlos existencia en este septiembre, el sueño que vió 7 Un fallo en Facebook permite apropiarse de páginas creadas la luz en el 2007 es hoy toda una realidad con- Google adquiere Motorola Mobility vertida en proeza. Esfuerzo, tesón y duro bre- gar ha acompañado cada día a esta Revista que El escritorio . ha sabido crecerse en sí misma y superar obs- 8 Las Tablets PC y su alcance táculos y dificultades propias del diario de cur- 11 Propuesta de herramientas libre para el diseño de sitios Web sar. Un colectivo de colaboración joven, entu- 14 Joven Club, Infocomunidad y las TIC siasta y emprendedor –bajo la magistral con- 18 Un vistazo a la Informática forense ducción de Raymond- ha sabido mantener y El laboratorio . desarrollar este proyecto, fruto del trabajo y la profesionalidad de quienes convergen en él. 24 PlayOnLinux TINO acumula innegables resultados en estos 25 KMPlayer 2.9.2.1200 años. Más de 350 000 visitas, un volumen apre- 26 Synergy 1.3.1 ciable de descargas y suscripciones, servicios 27 imgSeek 0.8.6 estos que ha ido incorporando, pero por enci- El entrevistado . ma de todo está el agradecimiento de muchos 28 Hilda Arribas Robaina por su existencia, por sus consejos, su oportu- na información, su diálogo fácil y directo, su uti- El taller .
    [Show full text]
  • Massively Multiplayer Online Games Industry: a Review and Comparison
    Massively Multiplayer Online Games Industry: A Review and Comparison From Middleware to Publishing By Almuntaser Alhindawi Javed Rafiq Sim Boon Seong 2007 A Management project presented in part consideration for the degree of "General and Financial MBA". CONFIDENTIALITY STATEMENT This project has been agreed as confidential between the students, university and sponsoring organisation. This agreement runs for five years from September, 14 th , 2007. ii Acknowledgements We would like to acknowledge Monumental Games management for giving us this opportunity to gain an insight of this interesting industry. Special thanks for Sarah Davis, Thomas Chesney and the University of Nottingham Business School MBA office personnel (Elaine, Kathleen and Christinne) for their assistance and support throughout this project. We would also like to thank our families for their constant support and patience; - Abdula Alhindawi - Fatima Alhindawi - Shatha Bilbeisi - Michelle Law Seow Cha - Sim Hock Soon - Yow Lee Yong - Mohamed Rafiq - Salma Rafiq - Shama Hamid Last but not least, our project supervisor Duncan Shaw for his support and guidance throughout the duration of this management project. i Contents Executive Summary iv Terms and Definition vi 1.0 Introduction 1 1.1 Methodology 1 1.1.1 Primary Data Capture 1 1.1.2 Secondary Data Capture 2 1.2 Literature Review 4 1.2.1 Introduction 4 1.2.2 Competitive Advantage 15 1.2.3 Business Model 22 1.2.4 Strategic Market Planning Process 27 1.2.5 Value Net 32 2.0 Middleware Industry 42 2.1 Industry Overview 42 2.2
    [Show full text]
  • Research on Improving Methods for Visualizing Common Elements in Video Game Applications ビデオゲームアプリケーショ
    Research on Improving Methods for Visualizing Common Elements in Video Game Applications ビデオゲームアプリケーションにおける共通的 なな要素要素のの視覚化手法視覚化手法のの改良改良にに関関関するする研究 June 2013 Graduate School of Global Information and Telecommunication Studies Waseda University Title of the project Research on Image Processing II Candidate ’’’s name Sven Dierk Michael Forstmann 2 Index Index 3 Acknowledgements Foremost, I would like to express my sincere thanks to my advisor Prof. Jun Ohya for his continuous support of my Ph.D study and research. His guidance helped me in all the time of my research and with writing of this thesis. I would further like to thank the members of my PhD committee, Prof. Shigekazu Sakai, Prof. Takashi Kawai, and Prof. Shigeo Morishima for their valuable comments and suggestions. For handling the formalities and always being helpful when I had questions, I would like to thank the staff of the Waseda GITS Office, especially Yumiko Kishimoto san. For their financial support, I would like to thank the DAAD (Deutscher Akademischer Austauschdienst), the Japanese Government for supporting me with the Monbukagakusho Scholarship and ITO EN Ltd, for supporting me with the Honjo International Scholarship. For their courtesy of allowing me the use of some of their screenshots, I would like to thank John Olick, Bernd Beyreuther, Prof. Ladislav Kavan and Dr. Cyril Crassin. Special thanks are given to my friends Dr. Gleb Novichkov, Prof. Artus Krohn-Grimberghe, Yutaka Kanou, and Dr. Gernot Grund for their encouragement and insightful comments. Last, I would like to thank my family: my parents Dierk and Friederike Forstmann, and my brother Hanjo Forstmann for their support and encouragement throughout the thesis.
    [Show full text]
  • Application: Unity 3D Web Player
    unity3d_1-adv.txt 1 of 2 Application: Unity 3D web player http://unity3d.com/webplayer/ Versions: <= 3.2.0.61061 Platforms: Windows Bug: heap corruption Exploitation: remote Date: 21 Feb 2012 Unity 3d is a game engine used in various games and it’s web player allows to play these games (unity3d extension) also directly from the web browser. # Vulnerabilities # Heap corruption caused by a negative 32bit size value which allows to execute malicious code. The problem is caused by the modification of the 64bit uncompressed size (handled as 32bit by the plugin) of the lzma header which is just composed by the following fields (from lzma86.h): Offset Size Description 0 1 = 0 - no filter, pure LZMA = 1 - x86 filter + LZMA 1 1 lc, lp and pb in encoded form 2 4 dictSize (little endian) 6 8 uncompressed size (little endian) Reading of the 64bit field as 32bit one (CMP EAX,4) and some of the subsequent operations: 070BEDA3 33C0 XOR EAX,EAX 070BEDA5 895D 08 MOV DWORD PTR SS:[EBP+8],EBX 070BEDA8 83F8 04 CMP EAX,4 070BEDAB 73 10 JNB SHORT webplaye.070BEDBD 070BEDAD 0FB65438 05 MOVZX EDX,BYTE PTR DS:[EAX+EDI+5] 070BEDB2 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8] 070BEDB5 D3E2 SHL EDX,CL 070BEDB7 0196 A4000000 ADD DWORD PTR DS:[ESI+A4],EDX 070BEDBD 8345 08 08 ADD DWORD PTR SS:[EBP+8],8 070BEDC1 40 INC EAX 070BEDC2 837D 08 40 CMP DWORD PTR SS:[EBP+8],40 070BEDC6 ^72 E0 JB SHORT webplaye.070BEDA8 070BEDC8 6A 4A PUSH 4A 070BEDCA 68 280A4B07 PUSH webplaye.074B0A28 ; ASCII "C:/BuildAgen t/work/b0bcff80449a48aa/PlatformDependent/CommonWebPlugin/CompressedFileStream.cp p" 070BEDCF 53 PUSH EBX 070BEDD0 FF35 84635407 PUSH DWORD PTR DS:[7546384] 070BEDD6 6A 04 PUSH 4 070BEDD8 68 00000400 PUSH 40000 070BEDDD E8 BA29E4FF CALL webplaye.06F0179C ..
    [Show full text]
  • The Architecture and Evolution of Computer Game Engines
    The architecture and evolution of computer game engines University of Oulu Department of Information Processing Sciences B.Sc thesis Rainer Koirikivi 12.3.2015 2 Abstract In this study, the architecture and evolution of computer game engines are analyzed by means of a literature review on the academic research body on the subject. The history of computer games, from early 1960s to modern day is presented, with a focus on the architectures behind the games. In the process, this study will answer a selection of research questions. The topics of the questions include identifying the common parts of a game engine, identifying the architectural trends in the evolution from early to present-day games and engines, identifying ways the process of evolution has affected the present state of the engines, and presenting some possible future trends for the evolution. As findings of the study, common parts of a game engine were identified as the parts that are specific to every game, with the suggestion that more detailed analyses could be made by concentrating on different genres. Increase in the size, modularity and portability of game engines, and improved tooling associated with them were identified as general trends in the evolution from first games to today. Various successful design decisions behind certain influential games were identified, and the way they affect the present state of the engines were discussed. Finally, increased utilization of parallelism, and the move of game engines from genre-specific towards genre-neutral were identified as possible future trends in the evolution. Keywords computer game, video game, game engine, game, software architecture, architecture, evolution 3 Foreword I'd like to thank my thesis supervisor Jouni Lappalainen for his continued support on what turned to be an epic journey into the fields of game engines and academic writing.
    [Show full text]
  • Orchestrating the In-Game Agency. Towards the Inaesthetics of the Code in Doom 3
    The Philosophy of Computer Games Conference, Kraków 2017 Orchestrating the in-game agency. Towards the inaesthetics of the code in Doom 3 Mateusz Felczak Jagiellonian University, Kraków Introduction This paper examines how the process of assigning playful space within the video game engine prepares it for players’ actions. The method will be demonstrated with the case study of Doom 3 (id Software 2004), which source code has already been the subject of aesthetic evaluation (see McGrath 2016). Research will be presented in two intertwined parts: the first one will focus on the theoretical and methodological background, while the second will examine the selected properties of Doom 3 code and its practical implementations in organizing the game space in relation to players’ actions and their status within the game world. I propose to use two of the works by French philosopher Alain Badiou as a methodological scaffolding for my analysis: Logics of Worlds (2009) and Handbook of Inaesthetics (2005a). The first one will provide the necessary definitions of object and space, and their relation to the work of art. The second of my sources, Handbook of Inaesthetics, will introduce the titular concept, which purpose is to shrink the gap between the art and philosophy, but with “maintaining that art is itself a producer of truths” (Badiou 2005a, p. 2). Among the inaesthetic toolkit, I will undertake a closer look into the practice of translation, and work with this concept to establish a link between the source code, game play elements it evokes, and the possible actions of the player who wishes to engage in a dialogue with the game rules.
    [Show full text]
  • Game Engines Pedagogical Goal
    3/12/17 Game Engines IMGD 4000 Pedagogical Goal • Your technical skills should not be Aed to any parAcular game engine • Just like your programming skills should not be Aed to any parAcular programming language • Use best tools For each job • ... or tools you were given J 2 1 3/12/17 Game Engine DefiniAon Game Engine “A series oF modules and interFaces that allows a development team to Focus on product game- play content, rather than technical content.” [Julian Gold, O-O Game Dev.] • But this class is about “the technical content”! J 3 Buy versus Build • Depends on your needs, resources and constraints – Technical needs (e.g., “pushing the envelope”?) – Financial resources (e.g., venture capital?) – Time constraints (e.g., 1 month or 2 years?) – Plaorm constraints (e.g., Flash?) – Other Factors (e.g., sequel?) • Most games commonly built today with some sort oF “engine layer” 4 2 3/12/17 Why Build? • Need – Technical needs oF game not supported by exisAng engines • Pedagogy – learn specific skill/concept • Control – Provide a beaer understanding oF engine- game interacAon when making game – Can extend/adjust engine iF needed • Genre – have engine especially fit genre (lightweight, just Features required) • Licensing – don’t want to pay out royalty Fees – Note, simple cost should not be a reason – there are many excellent cheap/Free engines à it will “cost” more to build an engine! Why Buy? • Financial – don’t have the Ame/money to build and engine • Support – exisAng engine has large user community and/or documentaon and/or technical support
    [Show full text]
  • Overview and Comparative Analysis of Game Engines for Desktop And
    pag. 21 Overview and Comparative Analysis of Game Engines for Desktop and Mobile Devices Eleftheria Christopoulou, Stelios Xinogalos Department of Applied Informatics, University of Macedonia, Greece {mai1519, stelios}@uom.edu.gr Abstract Game engines are tools that expedite the highly demanding process of developing games. Nowadays, the great interest of people from various fields on serious games has made even more demanding the usage of game engines, since people with limited coding skills are also involved in developing serious games. Literature in the field has studied game engines focusing on specific needs, such as 3D mobile game engines or open source 3D game engines. The motivation of this article and at the same time the advancement brought by it in the field, lies in the extension of an existing framework for the comparative analysis of several game engines that export games at least on Android and iOS mobile devices and cover a wide range of different user profiles and needs. In order to validate the results of this comparative analysis a shooter game was developed for Android devices based on official tutorials of the two game engines that came out to be more powerful, namely Unity and Unreal Engine 4. In conclusion, there is not a single game engine that is better for every purpose and the extensive overview provided can help users choose the most suitable game engine for their needs. Keywords: Game Engines, Comparison, Mobile devices, Android, Unity, Unreal Engine 4 1. Introduction Nowadays, serious games as well as mobile games development are on the rise. Day by day, desktop and console games are replaced by games which run on mobile phones and tablets.
    [Show full text]
  • Level Design
    MASARYK UNIVERSITY FACULTY}w¡¢£¤¥¦§¨ OF I !"#$%&'()+,-./012345<yA|NFORMATICS Level Design BACHELOR’S THESIS Pavel Ugwitz Brno, summer 2011 Declaration Hereby I declare, that this paper is my original authorial work, which I have worked out by my own. All sources, references and literature used or excerpted during elaboration of this work are properly cited and listed in complete reference to the due source. Advisor: Mgr. Jirˇ´ı Chmel´ık ii Acknowledgement I would like to thank my supervisor, Mgr. Jirˇ´ı Chmel´ık, for his help and advice. iii Abstract This thesis explores the workflow of level design in current-generation ren- dering engines. Having described the techniques of level design and the workflow methods of creating a level, the thesis also brings in an example level to demonstrate the aforementioned techniques. iv Keywords level design, game design, rendering engine, game engine, unreal engine, UDK, level design workflow, level optimization, CSG, static meshes v Contents 1 Introduction ............................... 3 2 Choosing the Rendering Engine ................... 5 2.1 Technical dispositions — the engine .............. 5 2.2 Team dispositions — design approaches ............ 7 2.3 Comparison of engines ...................... 8 3 The process of Level Design ..................... 12 3.1 Conceptual phase ......................... 13 3.1.1 Determining the core gameplay concepts . 14 3.1.2 Collecting references . 14 3.1.3 The floorplan . 15 3.1.4 Moving on to the production phase . 19 3.2 Geometry .............................. 20 3.2.1 Primitive geometry . 20 3.2.2 Terrain . 21 3.2.3 Zoning and Volumes . 22 3.3 Materials .............................. 22 3.3.1 Material Editor . 23 3.3.2 Applying the materials .
    [Show full text]