Video Game Development with the use of C# (Bachelor thesis)

Δαφνιώτης, Δημήτριος


This thesis titled “Video Game Development with the use of C#”, focuses on using the C# programming language and the Unity environment to create video games. These tools are relatively new (they first appeared in 2000 and 2005 respectively, although in their current form much later). The market addressed by these tools was previously shared between C++ applications with DirectX API or Java with OpenGL. The author of this work has begun this thesis using Java only to end up with overwhelming difficulties in portability and game enrichment with new elements. By exploring different choices and reading reviews about the various video game creation environments and tools, the author was exposed to these tools. This dissertation will cover not only the tools but also important details about them, such as why they are usefull in the objectives of this work and most importanltly how these different tools can be combined with each other. Analytically in the first chapter we will refer to the C# programming language in its history, the context in which it was developed and its basic features. In the second chapter we will discuss what is the Unity Engine and its history. In the third chapter we will analyze the interface of Unity and the basic capabilities it offers us for the objectives of this dissertation. We will also refer to Visual Studio and its basic features as this tool was used to write the code as well as its interaction with Unity. In the fourth chapter we will discuss how we can manage our game assets in a project such as the construction of a video game, how from one image we can make many sprites and animations within Unity, the different components used and the explanation of the code. We conclude this thesis with a brief outline of diverse possibilities to improve these video games as well as our findings from this project.
Institution and School/Department of submitter: Σχολή τεχνολογικών εφαρμογών/ Τμήμα Ηλεκτρονικών Μηχανικών
Subject classification: C# (Γλώσσα προγραμματισμού)
C# (Computer program language)
Βιντεοπαιχνίδια--Σχεδιασμός
Video games--Design
Keywords: γλώσσα προγραμματισμού C#;κατασκευή παιχνιδιών;βιντεοπαιχνίδια;εργαλεία;C # programming language;game development;video games;tools
Description: Πτυχιακή εργασία-Σχολή τεχνολογικών εφαρμογών/ Τμήμα Ηλεκτρονικών Μηχανικών,2018-9771
URI: http://195.251.240.227/jspui/handle/123456789/12092
Table of contents: Περίληψη 5 Κεφάλαιο 1 C# 8 1.1 Ιστορία της C#(C sharp) και η ανάπτυξη της 8 1.2 Διακριτικά χαρακτηριστικά της C# 9 1.2.1 Portability (Φορητότητα) 9 1.2.2 Typing 10 1.2.3 Metaprogramming 10 1.2.4 Μέθοδοι και functions(λειτουργίες) 10 1.2.5 Πρόσβαση Μνήμης (Memory Access) 11 1.2.6 Πολυμορφισμός (Polymorphism) 12 1.2.7 Language Integrated Query – LINQ 12 1.2.8 Λειτουργικός προγραμματισμός(Functional programming) 12 1.3 To συντακτικό (syntax) της C# 13 1.4 Τα σχέδια και οι στόχοι της C# για το μέλλον 13 1.5 Τι είναι το .NΕΤ Framework 14 1.6 Επεξήγηση συμαντικών όρων 15 Κεφάλαιο 2 Unity Game Engine 18 2.1 Τι είναι το Unity Game Engine 18 2.2 Game Engine 18 2.2.1 Τι είναι μία μηχανή παιχνιδιού (Game Engine) 19 2.2.2 Τι προσφέρει η Unity Game Engine 19 2.2.3 Σκοπώς των μηχανών παιχνιδιών 19 2.3 Τι είναι το Cross-platform 20 2.4 Application Programming Interface (API) 20 2.4.1 Τι είναι τα API 20 2.4.2 Σκοπός των API 21 2.4.3 Επεξήγηση των API που στοχεύχει η Unity 21 2.5 Ιστορία της Unity και η ανάπτυξη της 22 2.5.1 Licensing 23 2.6 Επεξήγηση συμαντικών όρων 24 Κεφάλαιο 3 Βασικά Εργαλεία για την ανάπτυξη ενός παιχνιδιού στην Unity Engine 27 3.1 Interface της Unity 28 3.2 Project Window 29 3.3 The Scene View 29 3.4 The Game View 30 3.5 Παράθυρο Ιεραρχίας (Hierarchy Window) 31 3.6 The Inspector Window or Inspector 32 3.7 Microsoft Visual Studio 34 3.8 Βασικά χαρακτηριστικά του Visual Studio 35 3.8.1 Code Editor 35 3.8.2 Debugger 36 3.9 Visual Studio Tools και αλληλεπίδραση με Unity 36 3.10 Επεξήγηση συμαντικών όρων 38 Κεφάλαιο 4 Δημιουργία Βιντεοπαιχνιδιών στην Unity 40 4.1 Διαχείρηση των Assets 40 4.2 Χωρισμός sprite και δημιουργία animation 41 4.2.1 Διαδικασία εξαγωγής Sprite από μια εικόνα 42 4.2.2 Δημιουργία Animation 44 4.3 Components που χρησιμοποιήθηκαν 50 4.4 Game Jack The Giant: Κώδικας και επεξήγησή του 50 4.4.1 Διάγραμμα Ροής Main Menu Scene 50 4.4.2 Διάγραμμα ροής Option Menu Scene 52 4.4.3 Διάγραμμα Ροής Highscore Scene 52 4.4.4 Διάγραμμα ροής Gameplay Scene 53 4.5 Game Flappy Bird: Κώδικας και επεξήγησή του 58 4.5.1 Διάγραμμα Ροής Main Menu scene 58 4.5.2 Διάγραμμα Ροής Gameplay scene 58 Επίλογος 63 APPENDIX Α Jack the giant Code 65 APPENDIX B Flappy Bird Code 82 Μεταφρασμένη, στην Ελληνική γλώσσα βιβλιογραφία 90 Bibliography 90
Appears in Collections:Πτυχιακές Εργασίες

Files in This Item:
File Description SizeFormat 
ΠΕ ΔΑΦΝΙΩΤΗΣ ΔΗΜΗΤΡΙΟΣ 511126.pdfΠτυχιακή εργασία2.91 MBAdobe PDFView/Open



 Please use this identifier to cite or link to this item:
http://195.251.240.227/jspui/handle/123456789/12092
  This item is a favorite for 0 people.

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.