Η εταιρεία Do Games του Matthew Tighe έχει περάσει το καλύτερο μέρος της τελευταίας δεκαετίας μεταφέροντας παιχνίδια σε κονσόλες, συμπεριλαμβανομένων τίτλων όπως το Cult of the Lamb και το Art of Rally. Το νέο του εγχείρημα, Εργασίες παιχνιδιούστοχεύει να πάρει όλη τη γνώση που συγκεντρώθηκε από αυτή την προσπάθεια και να την εφαρμόσει για να κάνει τη ζωή των προγραμματιστών λίγο πιο εύκολη.
«Σχεδόν κάθε παιχνίδι είχε παρόμοια προβλήματα», λέει ο Tighe, «και τα περισσότερα από αυτά δεν προκλήθηκαν τόσο από τεχνικές προκλήσεις, αν και θα μπορούσαν να σχετίζονται, ήταν περισσότερο για το γεγονός ότι τα χρονοδιαγράμματα συμπιέστηκαν και… πάρθηκαν αποφάσεις κάπου στη διαδικασία που βασίζονταν σε ελλιπείς πληροφορίες ή βιαστικές».
Ο Tighe εξηγεί ότι ένα τυπικό πρόβλημα μπορεί να είναι ένα σφάλμα που βρέθηκε πολύ αργά στην ανάπτυξη για να αντιμετωπιστεί σωστά, επειδή η λύση θα περιλάμβανε εκτεταμένη ανακατασκευή ενός εσωτερικού συστήματος. Και ενώ το πρόγραμμα εκμάθησης και τα πρώτα στάδια ενός παιχνιδιού τείνουν να ελέγχονται και να δοκιμάζονται σε μια ίντσα της ζωής τους, τα μεταγενέστερα στάδια συχνά δεν τραβούν την ίδια προσοχή, πράγμα που σημαίνει ότι τα σφάλματα γίνονται εμφανή μόνο την τελευταία στιγμή.
Η λύση, πιστεύει, είναι η δοκιμή σε όλη την ίδια τη διαδικασία ανάπτυξης. Η Tighe εξηγεί ότι η πλατφόρμα Gameworks αναλύει παιχνίδια για κοινά ζητήματα απόδοσης οπτικής ποιότητας και ζητήματα πιστοποίησης – όπως η χρήση λανθασμένων όρων για joypad ή κουμπιά χειριστηρίου – και στη συνέχεια παράγει μια αναφορά για τον χρήστη, η οποία μπορεί να επισημαίνει πράγματα όπως πτώσεις ανάλυσης ή ταχύτητας καρέ. Και η Tighe λέει ότι εξετάζουν επίσης το ενδεχόμενο να προσθέσουν πράγματα που σχετίζονται με τη χρήση της μνήμης, εντοπίζοντας πού κονσόλες όπως το Switch μπορεί να δυσκολευτούν με τμήματα ενός παιχνιδιού για υπολογιστή εάν μεταφερόταν στην κονσόλα της Nintendo.
“Βασικά, το σύστημα που αναπτύξαμε κατά τη διάρκεια των ημερών μεταφοράς για αυτοματοποιημένες δοκιμές έχει ληφθεί και κάπως ανατραπεί”, εξηγεί ο Tighe. «Επομένως, αντί να επικεντρώνεται κυρίως στην ανάπτυξη, τώρα επικεντρώνεται στην QA και την παραγωγή».
Κάθε φορά που ένας προγραμματιστής εκτελεί το παιχνίδι, λέει, το σύστημα καταγράφει όλο το βίντεο, τις εισόδους και διάφορες άλλες μετρήσεις. «Συλλέγουμε όλα αυτά τα δεδομένα και στη συνέχεια το σύστημά μας τα επεξεργάζεται χρησιμοποιώντας έναν συνδυασμό τεχνικών», λέει. “Χρησιμοποιεί δύο ή τρεις διαφορετικούς τύπους AI: Χρησιμοποιούμε λοιπόν LLMs, χρησιμοποιούμε ορισμένα προσαρμοσμένα μοντέλα και χρησιμοποιούμε ορισμένα μοντέλα υπολογιστικής όρασης. Δημιουργούν περισσότερα δεδομένα που τροφοδοτούνται στο σύστημα και στη συνέχεια χρησιμοποιούν ευρετικά [in] Σε συνδυασμό με ένα μοντέλο τεχνητής νοημοσύνης, μπορεί να χρησιμοποιήσει αυτά τα δεδομένα για να εντοπίσει πού βρίσκονται τα προβλήματα και να τα επισημάνει».
Επιπλέον, λέει, “οποιοιδήποτε άνθρωποι που εργάζονται με το σύστημα μπορούν επίσης να προσθέσουν τα προβλήματά τους: μπορούν να αποσπάσουν ένα συγκεκριμένο μέρος ενός χρονοδιαγράμματος βίντεο για μια δοκιμαστική συνεδρία.”
Υπάρχουν σχέδια για την ενσωμάτωση του συστήματος με εργαλεία όπως το Jira και το Trello, αν και αυτή τη στιγμή το Gameworks έχει το δικό του εσωτερικό σύστημα έκδοσης, το οποίο μοιάζει κάπως με κάρτες Trello. «Φανταστείτε ότι έχετε ένα τμήμα του παιχνιδιού όπου υπάρχει πτώση του ρυθμού καρέ», λέει ο Tighe. “Δημιουργείτε ένα πρόβλημα γι’ αυτό και, στη συνέχεια, κάποιος θα μπορούσε να κοιτάξει τις κάρτες, να δει τις λεπτομέρειες, να δει το βίντεο και να καταγράψει επίσης το τελευταίο σημείο αποθήκευσης. Έτσι, όποιος ελεγκτής χρησιμοποιεί αυτό το σύστημα, μπορεί να πατήσει ένα κουμπί και θα ξεκινήσει αμέσως το παιχνίδι ξανά και θα σας φτάσει κοντά σε αυτό το σημείο. Ή μπορείτε να μοιραστείτε το βίντεο με τους συναδέλφους σας και να το σχολιάσουν.”
“Αυτό που είναι ενδιαφέρον, ωστόσο, είναι να πούμε ότι έχετε ένα τμήμα του παιχνιδιού όπου ο ρυθμός καρέ πέφτει μερικές φορές: σε ποιο σημείο θεωρείτε αυτά τα πράγματα το ίδιο σφάλμα ή ξεχωριστά σφάλματα; Ένα από τα πράγματα που κάνουμε με ένα LLM είναι να το κάνουμε να επεξεργάζεται τα συνολικά δεδομένα που έχουν καταγραφεί και να προσπαθεί να εφαρμόσει τη λογική που θα έκανε ένας άνθρωπος στη δημιουργία προβλημάτων.” Εν ολίγοις, το σύστημα μπορεί να αναγνωρίσει ότι πολλές πτώσεις ρυθμού καρέ στη σειρά σχετίζονται όλες με ένα ζήτημα αντί να είναι ξεχωριστά προβλήματα και θα τα ομαδοποιήσει ανάλογα.
«Γενικά, προσπαθεί να χρησιμοποιήσει την τεχνητή νοημοσύνη για να κάνει όλα αυτά τα πράγματα που δεν τους αρέσει να κάνουν οι άνθρωποι – όλα τα ακατέργαστα πράγματα – έτσι ώστε να μπορούμε να αφιερώνουμε περισσότερο χρόνο προσπαθώντας να κάνουμε τα παιχνίδια διασκεδαστικά», καταλήγει ο Tighe. Και το σημαντικό, λέει, δεν πρόκειται για την τεχνητή νοημοσύνη που αντικαθιστά τις δουλειές των ανθρώπων.
“Πιστεύω ότι πολλοί άνθρωποι παίρνουν δεδομένα και προσπαθούν να τα τροφοδοτήσουν σε LLM ή άλλα μοντέλα που έχουν δημιουργήσει και ο στόχος είναι να αντικαταστήσουν κάτι που κάνει κάποιος ή να το κάνει καλύτερα. Αυτός δεν ήταν ο στόχος μας, επειδή ο στόχος μας ξεκίνησε πριν το AI πραγματικά μπορούσε να το επηρεάσει. Στόχος μας είναι να κάνουμε την παραγωγή ευκολότερη, να προσπαθήσουμε να βοηθήσουμε περισσότερα παιχνίδια να είναι λίγο πιο επιτυχημένα, επειδή η ποιότητά τους είναι πιο αποτελεσματική. κάνε αυτό».
Το PerfCop, ή το Performance Copilot, είναι ένα άλλο εργαλείο που λειτουργεί σε παρόμοιες γραμμές με το Gameworks, προσπαθώντας να εμφανίσει και να επισημάνει τεχνικά προβλήματα κατά τη διαδικασία ανάπτυξης. Για τον Ken Noland, συνιδρυτή του PerfCop κατασκευαστή AI Guys, η τεχνητή νοημοσύνη ήταν μια μακροχρόνια γοητεία.
χρησιμοποίησε πρωτοποριακές τεχνικές εκμάθησης AIκαι ο προγραμματιστής τεχνητής νοημοσύνης του παιχνιδιού Richard Evans θα συνέχιζε αργότερα να εργάζεται στην Google DeepMind, μια εταιρεία που ιδρύθηκε από τον απόφοιτο της Lionhead, Demis Hassabis.
Παρά το μακροχρόνιο ενδιαφέρον του για τη γενετική τεχνητή νοημοσύνη, ο Noland απομακρύνεται από τους ευαγγελιστές της τεχνητής νοημοσύνης. «Όταν ξεκίνησε ο κύκλος της διαφημιστικής εκστρατείας της τεχνητής νοημοσύνης, υπήρχαν άνθρωποι που έλεγαν, “Ω, η τεχνητή γενική νοημοσύνη θα έρθει τον επόμενο χρόνο ή τους επόμενους έξι μήνες”, ή “Θα μείνουμε όλοι χωρίς δουλειά σε έξι μήνες”. Και έτσι ένιωσα ότι υπήρχε κάποια ανάγκη για κάποιον με μια πιο ρεαλιστική, πιο γειωμένη προσέγγιση να παρέμβει και να πει, “Όχι, η AI είναι καλή δουλειά. Η τεχνητή νοημοσύνη δεν είναι τόσο καλή για άλλες περιπτώσεις χρήσης και τείνουμε να θεωρούμε τους εαυτούς μας ρεαλιστές της τεχνητής νοημοσύνης».
Αν και δεν θεωρεί την τεχνητή νοημοσύνη ως πανάκεια, θεωρεί ότι είναι πολύ βολικό για πράγματα όπως η προκαταρκτική εξέταση για αναθεωρήσεις κώδικα. «Επομένως, απλώς βεβαιωθείτε ότι ο κώδικας που υποβάλλεται συμμορφώνεται πραγματικά με ένα σύνολο κανόνων που έχουν θεσπιστεί από έναν τεχνικό διευθυντή ή διευθυντή ανάπτυξης και διασφαλίζοντας ότι είναι καλά τεκμηριωμένος και ότι ένας άλλος μηχανικός θα μπορούσε να εξετάσει τον κώδικα και να τον καταλάβει», λέει.
“Συνιστώ ακόμα στους ανθρώπους να κάνουν πραγματικές αναθεωρήσεις κώδικα, όπου εξετάζουν κάθε γραμμή κώδικα και το παρακολουθούν με τον προγραμματιστή για να βεβαιωθούν ότι κατανοούν τη λογική. Επομένως, δεν χρησιμοποιείται η γενετική τεχνητή νοημοσύνη για να αντικαταστήσει κανέναν, αλλά κυριολεκτικά χρησιμοποιεί τη γενετική τεχνητή νοημοσύνη για να εντοπίσει τις στιγμές του “Ω ναι, ξέχασα στο τέλος αυτής της γραμμής”.
Το PerfCop, εξηγεί, είναι ένα εργαλείο ανάλυσης απόδοσης που βασίζεται σε στατιστική ανάλυση με ένα «λεπτό καπλαμά γενετικής τεχνητής νοημοσύνης». Το εργαλείο έχει σχεδιαστεί για το Unreal Engine, αλλά ο Noland λέει ότι υπερβαίνει τα υπάρχοντα προϊόντα ανάλυσης απόδοσης για το Unreal.
«Εργαλεία όπως το GameBench και το Unreal Automation Test Framework είναι πολύτιμα, αλλά εξυπηρετούν θεμελιωδώς διαφορετικούς ρόλους», λέει. “Το GameBench εστιάζει στην τηλεμετρία υψηλού επιπέδου (ρυθμός καρέ, θερμικά, συγκρίσεις συσκευών) κυρίως για τη συγκριτική αξιολόγηση απόδοσης για κινητά. Σας λέει ότι υπάρχει πρόβλημα και σε ποιες συσκευές, αλλά δεν βοηθά τους μηχανικούς να καταλάβουν το γιατί.”
“Το Unreal’s Automation Test Framework εξυπηρετεί έναν εντελώς διαφορετικό σκοπό. Έχει σχεδιαστεί για να διασφαλίσει ότι το παιχνίδι λειτουργεί σωστά εκτελώντας δοκιμές, εντοπίζοντας παλινδρομήσεις και επαληθεύοντας ότι τα συστήματα δεν χαλούν. Ως μέρος αυτής της διαδικασίας, μπορεί να δημιουργήσει δεδομένα απόδοσης και να ανιχνεύσει αρχεία, αλλά δεν τα αναλύει.”
“Εκεί έρχεται το PerfCop. Λαμβάνει τα δεδομένα απόδοσης που παράγονται από εργαλεία όπως το Automation Test Framework και εκτελεί βαθιά στατιστική ανάλυση για να εντοπίσει μη φυσιολογικά μοτίβα εκτέλεσης, να απομονώσει τα πιο επικίνδυνα ζητήματα και να τα αναλύσει σε επίπεδο συνάρτησης ή εμβέλειας.”
Το τμήμα AI έρχεται μόνο στο τέλος της διαδικασίας, δημιουργώντας μια αναφορά που βασίζεται σε ντετερμινιστική ανάλυση. «Επικοινωνεί δομημένα ευρήματα με τρόπο που επιταχύνει τον εντοπισμό σφαλμάτων και τη λήψη αποφάσεων», λέει ο Noland. Πράγματι, με βάση τα σχόλια από τις πρώτες δοκιμές, η AI Guys υπολογίζει ότι το PerfCop εξοικονομεί περίπου 15-70 ώρες χρόνο το μήνα ανά προγραμματιστή.
«Τα σχόλια μέχρι στιγμής ήταν εκπληκτικά», ενθουσιάζει ο Noland. “Οι περισσότεροι από τους προγραμματιστές που το έχουν χρησιμοποιήσει λένε ότι τους γλιτώνει από το να χρειάζεται να κάνουν γενικές αναφορές. Τους γλιτώνει από το να χρειαστεί να περάσουν έξι έως οκτώ ώρες κοιτάζοντας το αρχείο παρακολούθησης και αναλύοντάς το, συγκρίνοντας προηγούμενες εκδόσεις και ανακαλύπτοντας πού έχουν αλλάξει τα πράγματα. Τα κάνει αυτόματα όλα για εσάς.”
Ο Noland προσθέτει ότι το PerfCop διαθέτει επίσης μια διεπαφή συνομιλίας που ονομάζεται Sherlock, την οποία οι προγραμματιστές μπορούν να χρησιμοποιήσουν για να κάνουν ερωτήσεις σχετικά με τα αποτελέσματα. «Μπορεί να καλέσει στο αρχικό σύνολο δεδομένων και να εξαγάγει τις πραγματικές μετρήσεις απόδοσης που είναι ενσωματωμένες στο αρχείο ίχνους», εξηγεί. “Μπορείτε πραγματικά να κάνετε πολύ συγκεκριμένες ερωτήσεις, όπως “Τι συμβαίνει στο καρέ 23 με το μονοπάτι να καταλαμβάνει το 20% του χρόνου καρέ;”
Το PerfCop είναι συνήθως ρυθμισμένο να τρέχει σε διάφορα επίπεδα κάθε βράδυ ή εβδομαδιαία και στη συνέχεια να παράγει μια αναφορά απόδοσης. Αυτό επιτρέπει στους προγραμματιστές να «αντιμετωπίζουν τυχόν προβλήματα απόδοσης από εβδομάδα σε εβδομάδα αντί να περιμένουν μέχρι το τέλος», λέει ο Noland. Όπως και το Gameworks, είναι ένα εργαλείο που μπορεί να επιτρέψει στους προγραμματιστές να παρακολουθούν τα προβλήματα όταν και όταν εμφανίζονται, αντί να ανακαλύπτουν ορισμένες δυσάρεστες εκπλήξεις – όπως καταστροφικές πτώσεις ρυθμού καρέ σε μια ενότητα στα τέλη του παιχνιδιού – κατά τη διάρκεια των ξέφρενων εβδομάδων πριν από την κυκλοφορία ενός παιχνιδιού.
Γενικότερα, ο Noland βλέπει αυτό το είδος back-end εφαρμογής ως το μέλλον της γενετικής τεχνητής νοημοσύνης στη βιομηχανία παιχνιδιών, αντί για τις πιο εντυπωσιακές χρήσεις που έχουμε δει. «Υπάρχει μεγάλη απώθηση [against] Αυτό που οι παίκτες αποκαλούν AI slop, και καταλαβαίνω γιατί αυτός ο όρος διαδίδεται αρκετά. Ωστόσο, ως εργαλείο ανάπτυξης, πραγματικά εκεί βλέπω τα δυνατά του σημεία. Ως εργαλείο ανάπτυξης, όπως και με το PerfCop, μπορεί να σας βοηθήσει να εντοπίσετε τα σημεία συμφόρησης στην απόδοσή σας, ενώ υπάρχουν και άλλοι τομείς που εξετάζουμε και οι οποίοι θα μπορούσαν ενδεχομένως να αλλάξουν τον τρόπο λειτουργίας του παιχνιδιού. Εκεί πραγματικά βλέπω ότι η γενετική τεχνητή νοημοσύνη είναι απίστευτα χρήσιμη».
VIA: www.gamesindustry.biz


