Ανάπτυξη ενός διαδραστικού παιχνιδιού εικονικής πραγματικότητας βασισμένο στην αναγνώριση κινήσεων του χρήστη
Abstract
Το αντικείμενο που πραγματεύεται η παρούσα διπλωματική εργασία είναι η δημιουργία ενός διαδραστικού πολυπρακτορικού παιχνιδιού με στόχο να αυξηθεί η αίσθηση εμπειρίας του παίχτη αλλά και η απλοποίηση λειτουργικότητας του παιχνιδιού. Η εργασία αυτή αποτελείται από δύο μέρη: από την ανίχνευση ανθρώπινων χειρονομιών και χρωματιστών αντικειμένων, για την αντικατάσταση των χειριστηρίων μιας παιχνιδομηχανής και από τη σχεδίαση ενός βιντεοπαιχνιδιού.
Στο πρώτο μέρος θα γίνει ανάλυση ορισμένων μεθόδων κατάτμησης της ψηφιακής εικόνας και θα επιλεχθεί η αποδοτικότερη για να υλοποιηθούν εφαρμογές αναγνώρισης χειρονομιών και αντικειμένων με την βοήθεια της υπολογιστικής όρασης. Συγκεκριμένα με τη χρήση μίας κάμερας θα γίνεται η λήψη συνεχόμενων εικόνων, με κεντρικό θέμα το αντικείμενο που κρατά ο παίχτης στα χέρια του, στη συνέχεια μετά από κατάλληλη ψηφιακή επεξεργασία των εικόνων με βάση το χρώμα θα υπολογίζονται οι συντεταγμένες του έγχρωμου αντικειμένου που είναι συνδεδεμένες με την κίνηση του χαρακτήρα του παιχνιδιού ενώ με την ανίχνευση ανθρώπινων χειρονομιών του παίχτη θα επιτυγχάνεται η πλοήγηση στις υπόλοιπες λειτουργίες του παιχνιδιού.
Το δεύτερο μέρος αποτελείται από την δημιουργία ενός βιντεοπαιχνιδιού. Ο παίχτης θα συμμετέχει σε ένα αγώνα τένις με αντίπαλο τον υπολογιστή ή με έναν άλλον παίχτη ταυτόχρονα.
Για την υλοποίηση της εργασίας αξιοποιήθηκε η βιβλιοθήκη ανοιχτού κώδικα OpenCV η οποία περιέχει υλοποιήσεις αλγορίθμων που σχετίζονται με την υπολογιστική όραση. Η εργασία αναπτύχθηκε σε γλώσσα Python και έχει χρησιμοποιηθεί επίσης το εργαλείο Microsoft Visual Studio ενώ για την δημιουργία γραφικού περιβάλλοντος χρησιμοποιήθηκε το λογισμικό Unity.
Ο απώτερος στόχος αυτής της εργασίας είναι να δημιουργήσει μια πιο φυσική μορφή ελέγχου που επιτρέπει στους παίκτες να επικεντρωθούν στον ενθουσιασμό του αγώνα χωρίς να ανησυχούν για το πάτημα των κουμπιών ή τις κινήσεις των χειριστηρίων του παιχνιδιού. The subject of the thesis is the creation of an interactive game with the aim of increasing the player's sense of experience but also simplifying the functionality of the game. This work consists of two parts, the detection of human gestures, objects to replace game controls and the design of a video game.
The first part consists of the recognition of gestures and colored objects with the help of computer vision. Specifically, a camera captures continuous images that, with the help of an algorithm, calculate the coordinates of the colored object that are connected to the movement of the game character, while by detecting human gestures, you can navigate the rest of the game's functions.
The second part consists of creating a 3D graphical video game environment. The player participates in a tennis match against the computer or simultaneously with another player.
For the implementation of the work, the OpenCV open-source library was used, which contains implementations of algorithms related to computer vision. The work was developed in Python language and the Microsoft Visual Studio tool was also used, while the Unity software was used to create the graphical environment. The ultimate goal of this thesis is to create a more natural form of control that allows players to focus on the excitement of the match without worrying about button presses or joystick movements.