Idea Engine σας επιτρέπει να δημιουργείτε και να μοιράζεστε εμπειρίες VR και μικτής πραγματικότητας. Η κατασκευή ενός τέτοιου εργαλείου γενικής χρήσης απαιτεί πολύπλοκες διεπαφές χρήστη. Σε αυτό το άρθρο επισκέπτη, ο προγραμματιστής Brett Jackson μοιράζεται τις προσεγγίσεις του στην αλληλεπίδραση διεπαφής χρήστη.
Guest άρθρο από τον Brett Jackson Ο Brett Jackson αναπτύσσει έργα VR από το 2015 και είναι ο διευθυντής της νέας εταιρείας με έδρα το Ηνωμένο Βασίλειο X82 Ltd. Οι προηγούμενες κυκλοφορίες του περιλαμβάνουν: Dimensional (PC VR), Breath Tech (PC VR), Jigsaw 360 (PC VR & mobile VR) και 120Hz (SideQuest).
Είναι σύνηθες να παρουσιάζετε μια διεπαφή χρήστη μέσω 2D διαδραστικών πάνελ σε XR. Δεν είναι μια συναρπαστική προοπτική, αλλά είναι οικείο και αποτελεσματικό. Ωστόσο, ακόμα κι αν αποδεχτούμε αυτήν την 2D εισβολή στους κόσμους μας XR, εξακολουθούν να υπάρχουν νέες σκέψεις και ευκαιρίες για να απελευθερωθούμε από τα 2D παραδείγματα.
Γρήγορα κουράστηκα από τους δείκτες λέιζερ που υπερέβαλαν την κίνηση των χεριών μου σε μακρινά πάνελ, μαζί με τα ασυνεπή διανύσματα στόχων τους και τη διακοπτόμενη ανίχνευση τσιμπήματος. Η προτίμησή μου είναι να προσεγγίσω και να αλληλεπιδράσω με τον κόσμο. Θέλω το πάνελ ακριβώς μπροστά μου, ώστε να μπορώ να το τοποθετήσω άνετα και να το χρησιμοποιήσω σαν μια πραγματική συσκευή.
Το τελευταίο μου έργο, Idea Engineαναπτύσσεται χρησιμοποιώντας StereoKit, μια βιβλιοθήκη OpenXR ανοιχτού κώδικα. Έχει μια φιλοσοφία για το χέρι και παρέχει υποστήριξη για παρακολούθηση χεριών εκτός συσκευασίας καθώς και υποστήριξη ελεγκτή. Επιτρέπει την αποτελεσματική δημιουργία δυναμικών παραθύρων με τυπικά στοιχεία ελέγχου διεπαφής χρήστη. Είναι ένα εξαιρετικό εργαλείο για τη γρήγορη δημιουργία έργων XR και έχει πολλά άλλα πλεονεκτήματα.
Πάνελ
Επομένως, το σημείο εκκίνησης μου είναι ένα πάνελ διεπαφής χρήστη που μπορούμε να πιάσουμε σε οποιοδήποτε σημείο (χωρίς ειδικές λαβές ή άκρες για εύρεση) με μια ωραία αύρα που εμφανίζεται όταν βρισκόμαστε σε εμβέλεια αρπαγής. Τώρα, ας προσθέσουμε περισσότερες σκέψεις XR.
Στο XR, είναι εύκολο για έναν χρήστη να καταλήξει πίσω από ένα πλαίσιο διεπαφής χρήστη. Αντί να δείξω ένα κενό πίσω ή αντίστροφο περιβάλλον εργασίας χρήστη, γυρίζω το περιβάλλον εργασίας προς την πλευρά που κοιτάζει ο χρήστης — απλό. Ακούγεται τετριμμένο, αλλά αξίζει να εξετάσετε συγκεκριμένα σενάρια XR. Μια άλλη προσέγγιση είναι η αυτόματη περιστροφή του πίνακα για να βλέπει συνεχώς τη συσκευή αναπαραγωγής, αλλά αυτό αφαιρεί τον έλεγχο από τον χρήστη. Αν θέλουν το πάνελ σε μια περίεργη γωνία, αφήστε τους, μπορεί να έχουν έναν καλό λόγο.
Ένα μεμονωμένο πάνελ θα πρέπει να διατηρείται σε μικρό μέγεθος (μέγεθος σελίδας / μέγεθος οθόνης), ώστε ο χρήστης να μπορεί να απορροφά εύκολα το περιεχόμενο χωρίς να χρειάζεται να γυρίσει το κεφάλι του, αλλά το XR μας παρέχει άφθονο χώρο. Μου αρέσει να αναζητώ ευκαιρίες για να ξεφύγω από τα όρια της σελίδας. Οι περιοχές με δυνατότητα κύλισης έχουν μια λαβή για να πιάσετε και να μετακινήσετε το περιεχόμενο. Κατά τη λήψη, βλέπετε μια πολύ διευρυμένη προβολή της περιοχής περιεχομένου και μπορείτε να κάνετε μεταφορά και απόθεση ενώ βρίσκεστε σε αυτήν τη λειτουργία, παρέχοντας μεγαλύτερο εύρος τοποθέτησης.
Δείχνω συμβουλές στο πλάι των πάνελ, με μια γραμμή στο στοιχείο διεπαφής χρήστη που περιγράφουν. Αυτό μειώνει την ποσότητα του κειμένου στον πίνακα. Οι χρήστες μπορούν να περιηγηθούν σε συμβουλές και να κρύψουν αυτές που είναι εξοικειωμένες.
Σε ένα άλλο έργο, δημιούργησα ένα πρωτότυπο τρισδιάστατο γράφημα Gantt που έκανε κύλιση από τη σελίδα οριζόντια και ξεθώριασε σε απόσταση. Η κύρια εστίαση του χρήστη ήταν ακόμα στον κεντρικό πίνακα κανονικού μεγέθους, αλλά μπορούσαν προαιρετικά να λάβουν μέρος στο ευρύτερο πλαίσιο.
Αν και τα πάνελ είναι βολικά και οικεία, δεν θα πρέπει να αισθανόμαστε περιορισμένοι από τα όριά τους και είναι διασκεδαστικό να ψάχνουμε τρόπους να ξεσπάσουμε.
Μενού
Το StereoKit με μύησε στο ακτινωτό μενού χειρός, το οποίο στη συνέχεια επέκτεινα. Μου αρέσει αυτή η ιδέα γιατί τη χειρίζεσαι με το ένα χέρι, επομένως είναι βολικό, προσβάσιμο. Κάνω το ίδιο σύστημα μενού διαθέσιμο τόσο στο δεξί όσο και στο αριστερό χέρι και χρησιμοποιώ την ίδια προσέγγιση για τα αναδυόμενα μενού στους πίνακες για συνέπεια.
Το ογκομετρικό μενού μου πηγαίνει τα πράγματα ένα βήμα παραπέρα και οδηγήθηκε καθαρά από την επιθυμία να χρησιμοποιήσω αυτήν την 3η διάσταση. Το χρησιμοποιώ για να επιλέξω προορισμούς τηλεμεταφοράς (με δείκτη σε κάθε προορισμό) και για να επιλέξω κοντινούς κόμβους για επεξεργασία. Το χρησιμοποιώ επίσης για εισαγωγή από το πληκτρολόγιο κατά την περιήγηση σε διευθύνσεις metaverse. Αυτό είναι αρκετά πειραματικό. Έχει το πλεονέκτημα ότι όλα τα σύμβολα βρίσκονται σε ίση απόσταση από το κέντρο και μπορείτε να δείτε τη συνεισφορά σας χωρίς να χρειάζεται να κοιτάξετε μακριά (ένα κοινό πρόβλημα με τα εικονικά πληκτρολόγια). Το μειονέκτημα είναι ότι είναι άγνωστο στους χρήστες, οπότε αναμένω κάποια αντίσταση σε αυτό. Παρατηρήστε στο βίντεο, τα γράμματα απομακρύνονται με αλφαβητική σειρά από εμπρός προς τα πίσω, οπότε σε λίγο η θέση τους θα γίνει οικεία.
Σύντομα θα μπορείτε να προσθέτετε μενού σαν αυτά στα δικά σας έργα Idea Engine.
3D Widgets
Ένας επιλογέας χρώματος πρόσφερε μια ιδανική ευκαιρία πειραματισμού, έχοντας τρεις τιμές (απόχρωση, κορεσμός και τιμή) που μπορούσαν να αντιστοιχιστούν σε 3 διαστάσεις. Στο εργαλείο επιλογής χρωμάτων 3D, μπορείτε να αλλάξετε και τις τρεις τιμές ταυτόχρονα ή να ορίσετε μεμονωμένα την απόχρωση, τον κορεσμό ή την τιμή. Πιστεύω ότι είναι πιο ενδιαφέρον να αλληλεπιδράσετε από τα ρυθμιστικά σε μια σελίδα 2D.
Ομοίως με την κίνηση, θέλω να κινούμαι σε 3D, οπότε έφτιαξα ένα τρισδιάστατο joystick για ομαλή κίνηση με το χέρι. Απλώς σύρετε τη σφαίρα προς την κατεύθυνση που θέλετε να ταξιδέψετε και κυλήστε τον καρπό σας για γρήγορη ή ομαλή περιστροφή. Λειτουργεί σε λειτουργία πεζοπορίας ή πτήσης και η περιστροφή μπορεί να απενεργοποιηθεί εάν ο χρήστης θεωρεί ότι είναι πάρα πολύ να τα σκεφτεί όλα σε ένα χειριστήριο. Εξακολουθώ να υποστηρίζω την παραδοσιακή κίνηση που βασίζεται σε ελεγκτή, αλλά αυτό το χειριστήριο με ένα χέρι αντιγράφει τη λειτουργικότητα πολλαπλών joystick/κουμπιών και είναι ένα ενδιαφέρον παράδειγμα του τρόπου με τον οποίο η τρισδιάστατη κίνηση χεριών μπορεί να καλύψει τις απαιτήσεις με νέους τρόπους.
Χέρια
Σε όλα τα παραδείγματά μου βίντεο, θα δείτε ότι κρύβω το χέρι του χρήστη μόλις αρχίσει να αλληλεπιδρά με τη διεπαφή χρήστη. Πολλοί προγραμματιστές καταβάλλουν προσπάθεια για να δημιουργήσουν προσεκτικά πόζες αρπαγής για διαφορετικούς σκοπούς, και αυτό φαίνεται προσεγμένο, αλλά για μένα, ένα καλά τοποθετημένο χέρι που δεν αντικατοπτρίζει τη θέση του χεριού μου αποσπά την προσοχή περισσότερο από το να μην υπάρχει καθόλου χέρι. Ένα χέρι μπορεί επίσης να είναι οπτικό εμπόδιο μόλις ξεκινήσει η αλληλεπίδραση.
Με το χέρι να φύγει, είμαι επίσης ελεύθερος να αμβλύνω ή να υπερβάλλω την κίνηση των χεριών χωρίς οπτική σύγκρουση. Μειώνω την κίνηση του χεριού στον επιλογέα χρώματος για χαμηλότερη ευαισθησία και υπερβάλλω την κίνηση του χεριού κατά την κύλιση όταν υπάρχει πολύ περιεχόμενο.
Κείμενο
Ενώ το Idea Engine υποστηρίζει το Sketchfab για τη λήψη τρισδιάστατων μοντέλων, την τεχνητή νοημοσύνη για τη δημιουργία εικόνων και την εισαγωγή φωτογραφιών/ήχου, είναι δύσκολο να ξεπεράσεις την ευκολία και την προσβασιμότητα του κειμένου και του προφορικού λόγου για τη μετάδοση σύνθετων αφηγήσεων. Έχοντας αυτό κατά νου, χρειαζόμουν αξιοπρεπή υποστήριξη για κείμενο, ώστε οι χρήστες να μπορούν να συγχωνεύουν όλες τις διαθέσιμες μορφές για να πουν τις ιστορίες τους.
Το κείμενο γενικά δεν φαίνεται υπέροχο στην εικονική πραγματικότητα, επομένως το σβήνω καθώς απομακρύνεστε για να αφαιρέσετε τα αντιαισθητικά αντικείμενα και να κλείσετε και τα πλαίσια κειμένου. Οι χρήστες θα είναι πρόθυμοι να εξερευνήσουν το περιβάλλον αντί να διαβάσουν κείμενο, επομένως έχω την επιλογή να ζητήσω από έναν αφηγητή να διαβάζει αυτόματα οποιοδήποτε κείμενο μπλοκ που συναντάτε.
Η εισαγωγή κειμένου ήταν μια πρόκληση χωρίς εξαιρετική λύση. Δημιούργησα εισαγωγή κειμένου σε στυλ κινητού με υποστήριξη αποκοπής και επικόλλησης και αυτόματη σελιδοποίηση χρησιμοποιώντας εικονικό πληκτρολόγιο. Όταν τελείωσα, σκέφτηκα, εντάξει, αλλά δεν θα ήθελα να πληκτρολογήσω ένα μεγάλο απόσπασμα σε XR. Στη συνέχεια πρόσθεσα υποστήριξη φωνής σε κείμενο. Αυτό βοήθησε, αλλά ανακάλυψα ότι έπρεπε να κάνω πολλή επεξεργασία μετά την υπαγόρευση μου και αυτό ήταν ακόμα πιο αργό από τη χρήση παραδοσιακών μέσων. Τώρα επιτρέπω στους χρήστες να συνδέονται με τα ακουστικά τους από ένα πρόγραμμα περιήγησης σε όποιες συσκευές τους ανήκουν και να εισάγουν κείμενο μέσω μιας ιστοσελίδας. Χρησιμοποιώ τακτικά και τις τρεις τεχνικές, με το πρόγραμμα περιήγησης που χρησιμοποιείται για την εισαγωγή μεγάλου κειμένου.
Το μάθημά μου εδώ ήταν ότι δεν χρειάζεται πάντα να λύνεις τα πάντα στο XR. Μερικές φορές είναι προτιμότερο να χρησιμοποιείτε πιο κατάλληλες συσκευές και στη συνέχεια να εισάγετε τα αποτελέσματα.
Δοκίμασέ το
ο Το δημόσιο alpha είναι πλέον διαθέσιμο και δωρεάν για λήψη στο App Labώστε να μπορείτε να έρθετε και να δοκιμάσετε οποιαδήποτε από τις δυνατότητες που συζητήθηκαν και να μου πείτε τα σχόλιά σας.