Document Outline
ΠΕΡΙΛΗΨΗ
ABSTRACT
Εισαγωγή
Κίνητρο
Μηχανές παιχνιδιών
Μηχανές παιχνιδίων χωρίς γραφικό περιβάλλον
Ιστορία των βιντεοπαιχνιδιών
Η ανάγκη για μηχανές παιχνιδιών
Δομή της εργασίας
Θεωρητικό υπόβαθρο και ορισμοί
Τι είναι μια μηχανή παιχνιδιών;
Κύριες υποδομές και υποσυστήματα μιας μηχανής παιχνιδιών
Επίπεδο πλατφόρμας (Platform Layer)
Διαχείριση πόρων (Resource Management)
Μαθηματική βιβλιοθήκη (Math Library)
Υποσύστημα απόδοσης γραφικών (Rendering Engine) 2D/3D
Διαχείριση εισόδου (Input Handling)
Βασικός βρόχος παιχνιδιού (Game Loop)
Physics engine (Μηχανή Φυσικής)
Audio system (Σύστημα Ήχου)
Animation system (Σύστημα Κίνησης)
Multithreading (Παραλληλοποίηση)
Σύνοψη
Προδιαγραφές και στόχοι
Επιλογές στη βάση της μηχανής
Προδιαγραφές και σχεδιαστικές επιλογές εντός της μηχανής
Εκπαιδευτικός χαρακτήρας της μηχανής
Εργαλεία και τεχνητή νοημοσύνη
Σύνοψη κεφαλαίου
Υλοποίηση
Γενική αρχιτεκτονική
Σύστημα δημιουργίας παραθύρου (Window System – GLFW abstraction)
Σύστημα διαχείρισης εισόδου
Enum KeyCode και ανεξαρτησία από backend
Event System
Σύστημα απόδοσης γραφικών Rendering Pipeline
Διαχείριση γεωμετρίας και Buffer Objects
Renderer και Renderer2D
Βελτιστοποίηση μέσω Batch Rendering
Αναπαράσταση αντικειμένων: Από την κλάση GameObject στο Entity Component System (ECS)
Αναπαράσταση πλέγματος με δομή Half-Edge
Αρχική προσέγγιση: Ιεραρχία Κλάσεων
Μετάβαση στην αρχιτεκτονική Entity–Component–System (ECS)
Σύστημα διαχείρισης σκηνής (Scene Management)
Η κλάση Scene
Κύκλος ζωής σκηνής
Σύστημα Components
Transform Component
SpriteRenderer Component
Light Component 2D
Box_Collider Component
Camera Component
Audio Component
UI Text Component
Python API
Τρόπος υλοποίησης
Χρήση
Σύστημα διεπαφής χρήστη
ui components
ui rendering system
ui διαχειριστής (manager)
Συμπληρωματικές λειτουργικότητες
input output
Μαθηματικά εργαλεία
Εφαρμογές χρήσης της μηχανής
Δημιουργία δισδιάστατου παιχνιδίου
Περιγραφή του παιχνιδιού
Διάρθρωση της εφαρμογής
Υλοποίηση λογικής του παιχνιδιού
Δημιουργία (Top down) παιχνιδίου
Περιγραφή του παιχνιδιού
Διάρθρωση της εφαρμογής και υλοποίηση λογικής του παιχνιδιού
Δημιουργία παιχνιδιού με χρήση τεχνητής νοημοσύνης
Περιγραφή του παιχνιδιού
Προετοιμασία του παιχνιδιού
Αποτελέσματα μετά την χρήση του Claude 3.5 Sonnet
Αποτελέσματα μετά την χρήση του Claude Haiku 4.5
Αποτελέσματα μετα την χρήση του Big Pickle
Σύνοψη κεφαλαίου
Συμπεράσματα
Συμπεράσματα με βάση την θεωρητική έρευνα
Συμπεράσματα απο την πρακτική υλοποίηση της μηχανής
Συμπεράσματα απο την δημιουργία παιχνιδίων
Μελλοντικές επεκτάσεις
ΒΙΒΛΙΟΓΡΑΦΙΑ
Δήλωση Πνευματικών Δικαιωμάτων