Ρώτησα τους προγραμματιστές γιατί οι θύρες PC το 2023 λειτουργούν σαν σκουπίδια

σεβαστείτε την επιλεγμένη εικόνα 2
Αυτή η ιστορία είναι μέρος της σειράς ReSpec του Jacob Roach, που καλύπτει τον κόσμο των παιχνιδιών και του υλικού για υπολογιστή.

Όταν κοιτάζετε το κατάσταση των εκδόσεων PC το 2023, είναι εύκολο να αρχίσεις να δείχνεις το δάχτυλο. Το παιχνίδι δεν έχει βελτιστοποιηθεί (ό, τι κι αν σημαίνει αυτό), ή ο εκδότης το έσπευσε πολύ γρήγορα ή οι κάρτες γραφικών που μας πούλησε η Nvidia έρχονται με πολύ λίγη VRAM. Αλλά αυτές οι κατηγορίες, στις περισσότερες περιπτώσεις, είναι μισογυνές και αλαζονικές, και παρόλο που υπαινίσσονται την πραγματικότητα, δεν λένε την πλήρη ιστορία.

Περιεχόμενα

  • Ποιο είναι το πρόβλημα?
  • Τι μπορείτε να κάνετε σωστά
  • Ο δρόμος προς τα εμπρός για τις θύρες υπολογιστή

Προτεινόμενα βίντεο

Ήθελα να μάθω τι συνέβαινε στην πραγματικότητα, οπότε κάθισα με μερικούς προγραμματιστές για να καταλάβω την κατάσταση των παιχνιδιών για υπολογιστή και γιατί έχουν φτάσει τόσες πολλές εκδόσεις με τόσο μεγάλα προβλήματα. Το πιο σημαντικό, ήθελα να μάθω τι θα μπορούσαν να κάνουν οι προγραμματιστές και οι εκδότες για να λύσουν αυτά τα ζητήματα, και παρόλο που η πορεία προς τα εμπρός δεν είναι ξεκάθαρη, γίνεται φανερό ότι οι προγραμματιστές γνωρίζουν ότι υπάρχει ένα πρόβλημα.

Ποιο είναι το πρόβλημα?

Ένα μικρό gaming PC που κάθεται δίπλα στο PS5.

Αρχικά, πρέπει να εντοπίσουμε το βασικό πρόβλημα με τον υπολογιστή, ειδικά όταν τα παιχνίδια αποστέλλονται σε καταστάσεις με δυνατότητα αναπαραγωγής (αν όχι τέλειες) στις κονσόλες, αλλά φτάνουν τρομερά σπασμένα στον υπολογιστή. Σε υψηλό επίπεδο, το πρόβλημα με τον υπολογιστή ως πλατφόρμα είναι ακριβώς αυτό που τον κάνει τόσο δελεαστικό εξ αρχής: η ευελιξία.

Σχετίζεται με

  • Με αποκλειστικές συνεργασίες PC, όλοι χάνουν
  • Οι κονσόλες εξακολουθούν να έχουν ένα μεγάλο πλεονέκτημα, και αυτό βλάπτει τα παιχνίδια υπολογιστή
  • Πώς ένα viral παιχνίδι bodycam ξεγέλασε το Διαδίκτυο ώστε να πιστέψει ότι ήταν πραγματικό υλικό

Ο Marc Whitten, ανώτερος αντιπρόεδρος και γενικός διευθυντής της Unity Create, λέει ότι «η απόλυτη ποικιλομορφία και μεταβλητότητα των διαμορφώσεων υπολογιστή στις οποίες θα παίζονται τα παιχνίδια… μπορεί σίγουρα αποκαλύψει απροσδόκητα ζητήματα». Ο Whitten επισημαίνει επίσης «διαφορετικά λειτουργικά συστήματα και νέες ενημερώσεις προγραμμάτων οδήγησης, θερμότητα και καθυστέρηση και προσαρμογή χρήστη» ως παράγοντες που μπορούν να επηρεάσουν το πρόβλημα.

Αυτή είναι η απάντηση, είμαι σίγουρος, που οι περισσότεροι άνθρωποι υποθέτουν ότι είναι η εξήγηση.

Αλλά το θέμα, σύμφωνα με τον Whitten, δεν είναι η έλλειψη δοκιμών από μόνη της. Ισχυρίζεται ότι τα παιχνίδια «γενικά δοκιμάζονται εκτενώς κατά τη διάρκεια της ανάπτυξης». Το πρόβλημα καταλήγει στο την κλίμακα των διαφορετικών διαμορφώσεων που πρέπει να δοκιμάσουν οι προγραμματιστές, καθώς και τις μεταβλητές που δεν μπορούν να υπολογίσουν Για.

Ως πείραμα σκέψης, ας υποθέσουμε ότι ένας προγραμματιστής καθόρισε 100 διαφορετικές διαμορφώσεις υπολογιστή για δοκιμή, διαφοροποιώντας την CPU, την GPU, ΕΜΒΟΛΟ, και σκληρό δίσκο μεταξύ τους. Για την ιστορία, αυτός είναι ένας αριθμός που μόλις βγάζω, όχι κάτι που ένας προγραμματιστής στην πραγματικότητα ανέφερε ως ρεαλιστικό στόχο. Τώρα, πάρτε όλες αυτές τις διαμορφώσεις και πολλαπλασιάστε τις με δεκάδες πρόσθετους παράγοντες: Τι λειτουργικό σύστημα χρησιμοποιείτε; Ποια έκδοση αυτού του λειτουργικού συστήματος; Τι θα λέγατε για την έκδοση του προγράμματος οδήγησης; Ποιες ρυθμίσεις BIOS είναι ενεργοποιημένες; Έχετε κάποιο λογισμικό που τρέχει στο παρασκήνιο όπως το Razer Synapse ή το Corsair iCue;

Το RTX 4080 σε έναν πάγκο δοκιμών που τρέχει.
Jacob Roach / Digital Trends

Το εύρος των πιθανών διαμορφώσεων ξεπερνά κατά πολύ το CPU και την GPU που έχετε στο σύστημά σας και αυτοί οι παράγοντες μπορούν εύκολα να πολλαπλασιαστούν σε δεκάδες χιλιάδες σενάρια που οι προγραμματιστές απλά δεν μπορούν να υπολογίσουν Για. Σε έναν ιδανικό κόσμο, οι προγραμματιστές μπορούν να διορθώσουν τα μεγαλύτερα προβλήματα για τις πιο δημοφιλείς διαμορφώσεις υπολογιστή με τα νεότερα προγράμματα οδήγησης και ενημερώσεις λειτουργικού συστήματος, αφήνοντας μόνο μικρά, συγκεκριμένα ζητήματα προς αντιμετώπιση μετά την κυκλοφορία.

Ούτε ο Whitten δεν είναι μόνος σε αυτό το συναίσθημα. John Johanas, διευθυντής παιχνιδιών του Hi-Fi Rushκαι The Evil Within 2, λέει ότι «είναι αρκετά μη ρεαλιστικό να πιστεύεις ότι μπορείς να φτιάξεις ένα προϊόν που θα λειτουργεί άψογα σε αυτό μοιάζει με μια απεριόριστη διαμόρφωση των CPU, των GPU, της μνήμης και πιο πιθανό, τι τρέχει στο Ιστορικό."

Hideyuki Miyashita, προγραμματιστής συστημάτων Hi-Fi Rush, συμφώνησε, αλλά επεσήμανε συγκεκριμένα το κόστος της βελτιστοποίησης ενός παιχνιδιού για κάθε δυνατή διαμόρφωση: «Σε όρους απόδοσης υπολογιστή, καθιστώντας κάθε δυνατότητα γραφικών επεκτάσιμη για διαφορετικές διαμορφώσεις ιδανικό; Ωστόσο, το κόστος ανάπτυξης θέτει ένα ανώτατο όριο στη ρεαλιστική υποστήριξη επεκτασιμότητας».

Αυτό δεν είναι μια νέα ιστορία. Η μεγάλη ποικιλία διαμορφώσεων υπολογιστή είναι ο κοινός ένοχος σε όλα, από το πόσο δύσκολο είναι να βελτιστοποιήσετε παιχνίδια σε υπολογιστή μέχρι γιατί δεν έχουμε δει Το Quick Resume του Xbox εμφανίζεται στα Windows. Το ερώτημα είναι τι μπορούν να κάνουν οι προγραμματιστές παρά τον περιορισμένο χρόνο και τα χρήματα που διαθέτουν. Επειδή οι υπολογιστές δεν γίνονται πιο απλοί και τα παιχνίδια εξακολουθούν να φτάνουν στην πλατφόρμα σπασμένα.

Τι μπορείτε να κάνετε σωστά

Ο Cal Kestis κρατά το μπλε φωτόσπαθό του και κουβαλάει το BD-1 στο Star Wars Jedi: Survivor.

Έχουμε πολλά παραδείγματα παιχνιδιών που υποστηρίζουν λάθος υπολογιστή φέτος. Ένα πρωταρχικό παράδειγμα είναι Star Wars Jedi: Survivor, που επί του παρόντος βρίσκεται σε κατάσταση «Μικτή» αξιολόγησης στο Steam παρόλο που είναι ένα από τα πιο δημοφιλή παιχνίδια της χρονιάς. Η κορυφαία αναθεώρηση λέει: «Ένα μόνο σφάλμα κατέστρεψε το αρχείο αποθήκευσης NG+ 140 ωρών 99,8%». Ναι.

Επικοινώνησα με την ομάδα ανάπτυξης για να πάρω μια ιδέα για το τι πήγε στραβά, και παρόλο που ήταν αρχικά δεκτικοί, η EA παρενέβη και σταμάτησε να επιστρέφει τα email μου. Έτσι, αντί να εξετάζουμε ποια παιχνίδια κάνουν λάθος στον υπολογιστή, πρέπει να δούμε τι κάνουν σωστά οι προγραμματιστές.

Hi-Fi Rush είναι μια πρωταρχική μελέτη περίπτωσης. Είναι ένα νέο παιχνίδι από ένα στούντιο AAA και χρησιμοποιεί το περίφημο Unreal Engine 4. Μπορεί να νομίζετε ότι συγκρίνει το μήλο με τα πορτοκάλια μεταξύ τους Hi-Fi Rush και ένα παιχνίδι σαν Star Wars Jedi: Survivor, αλλά έχουν περισσότερα κοινά από όσα υποψιάζεστε. Όπως επισημαίνει ο Johanas, «… το γεγονός ότι το παιχνίδι έχει μια αισθητική κινουμένων σχεδίων θα δώσει σε ορισμένους χρήστες την αντίληψη ότι το παιχνίδι δεν θα πρέπει να είναι πρόβλημα για να τρέξει στον υπολογιστή κανενός. Ρεαλιστικά, το παιχνίδι κάνει πολλά πράγματα για να πετύχουμε την εμφάνιση που επιδιώξαμε και το συνεχώς κινούμενος κόσμος που είναι πολύ φορολογικός… Το ήξερα ότι πηγαίνοντας μέσα και φρόντισα να προσπαθήσουμε να τους πετύχουμε προσδοκίες.»

Ο Chai κόβει ένα ρομπότ σε Hi-Fi Rush.
Bethesda

Ο καθορισμός αυτού του στόχου από την αρχή φαινόταν σημαντικός Hi-Fi Rushτης σταθερότητας. Οι προγραμματιστές σημειώνουν ότι από την αρχή ήταν σχεδιαστικός στόχος να διατηρηθούν τουλάχιστον 60 καρέ ανά δευτερόλεπτο (fps) λόγω του γεγονότος ότι είναι και παιχνίδι ρυθμού και παιχνίδι δράσης, όπου η έλλειψη αυτού του σημείου θα προκαλούσε «λόξυγγα [που] θα μπορούσε να οδηγήσει σε αποσυγχρονισμό από τη μουσική και σε μια κακή εμπειρία παιχνιδιού», σύμφωνα με Ο Γιοχάνας.

Πώς τα κατάφερε η ομάδα του Tango Gameworks; Συνοψίζεται ευρέως σε τρία κύρια σημεία: προσεκτική παρακολούθηση VRAM, ασύγχρονες λειτουργίες και προσωρινή αποθήκευση PSO.

Σύμφωνα με τον Kosuke Tanaka, επικεφαλής προγραμματιστή γραφικών για Hi-Fi Rush, η ομάδα παρακολουθούσε τη χρήση VRAM σε κάθε βήμα της ανάπτυξης. Αυτό περιλαμβάνει φυσικά την παρακολούθηση κάθε επιπέδου, αλλά και τη χρήση VRAM κάθε ενότητας τέχνης, ζητώντας από τους καλλιτέχνες να μειώσουν τη χρήση υφής ή πλέγματος μνήμης για να ταιριάζει στον προϋπολογισμό του παιχνιδιού. Αυτό δεν είναι ασυνήθιστο ούτε στην ανάπτυξη παιχνιδιών.

Τι λειτουργεί σε Hi-Fi RushΗ χάρη του είναι η ισχυρή καλλιτεχνική του κατεύθυνση. Όπως επισημαίνει ο Tanaka: «Το στυλ τέχνης μας μας βοήθησε λίγο γιατί δεν απαιτούμε παραδοσιακές υφές PBR όπως κανονικούς χάρτες, τραχύτητα χάρτες ή μεταλλικούς χάρτες». Είναι απόδειξη ότι δουλεύεις με δημιουργικούς περιορισμούς και πώς αυτό μπορεί να επηρεάσει τη σταθερότητα του τελικού προϊόν. Ο Johanas λέει ότι δεν ήταν θέμα μικρότερου βεληνεκούς – ήταν θέμα «δεν χρειάζεται να πας μεγάλα χωρίς λόγο».

Ρώτησα την ομάδα από τι έμαθε Hi-Fi Rush ότι θα μπορούσε να μεταφέρει σε μεγαλύτερα, ευρύτερα έργα, αλλά δεν είναι ακριβώς ο τρόπος με τον οποίο το Tango παίρνει μαθήματα από το παιχνίδι. Στην πραγματικότητα, η ομάδα ανάπτυξης μου είπε ότι έμαθε πολλά περισσότερα για τη βελτιστοποίηση από Ghostwire: Τόκιο, που ταιριάζει περισσότερο στο παραδοσιακό καλούπι ΑΑΑ, και μετέφερε αυτές τις ιδέες μέσα Hi-Fi Rush, όχι αντίστροφα.

Ο Akito επιτίθεται στους εχθρούς με μαγεία στο Ghostwire: Tokyo.
Το Ghostwire: Tokyo είναι μια πρώιμη έκθεση του TSR της Unreal Engine, το οποίο μοιάζει πολύ με το FSR 2.0.

«Μάθαμε πολλές από τις γνώσεις μας σχετικά με τον τρόπο αντιμετώπισης του τραυλισμού μέσα στο παιχνίδι Hi-Fi Rush από την εμπειρία μας στη βελτιστοποίηση Ghostwire: Τόκιο», μου είπε ο Miyashita. Ένα μεγάλο μέρος από αυτό ήταν  Αποθήκευση αντικειμένου κατάστασης αγωγού (PSO).. Αυτή είναι μια δυνατότητα που είναι διαθέσιμη στο Unreal Engine 4 που βοηθά στη μείωση του τραυλισμού με την εκ των προτέρων μεταγλώττιση των shader πριν εκτελέσετε το παιχνίδι.

Το κύριο πρόβλημα είναι ότι το Unreal Engine 4 δεν το κάνει αυτόματα, οδηγώντας σε καταστάσεις όπου οι shaders πρέπει να μεταγλωττιστούν ενώ παίζετε το παιχνίδι, κάτι που προκαλεί τραύλισμα. Ο Miyashita λέει "αυτό είχε ως αποτέλεσμα ορισμένες διαδικασίες μετά και το VFX να προκαλέσει τραυλισμό". Ο προγραμματιστής λέει επίσης ότι η προσωρινή αποθήκευση PSO είναι προαιρετική, επομένως πρέπει να είναι μια συγκεκριμένη εστίαση για τον προγραμματιστή.

Ωστόσο, η προσωρινή αποθήκευση δεν επιλύει κάθε πρόβλημα, και εκεί εμφανίζονται οι ασύγχρονες λειτουργίες. ο Hi-Fi Rush Η ομάδα χρησιμοποίησε ασύγχρονη μεταγλώττιση - όπου τα shader μεταγλωττίζονται ξεχωριστά από το νήμα του παιχνιδιού - αλλά ήταν επίσης μεγάλη εστίαση λαμβάνοντας υπόψη ότι το παιχνίδι τρέχει στο Unreal Engine 4.

Όπως έχουμε δει με άλλα παιχνίδια Unreal Engine 4 όπως Star Wars Jedi: Survivor και Redfall, ο κινητήρας δεν είναι πολύ καλός για την κλιμάκωση στα πολλά νήματα που είναι διαθέσιμα στους σύγχρονους CPU. Ως Miyashita εξηγεί: «Το πόσο δύσκολη μπορεί να είναι η υποστήριξη πολλαπλών νημάτων εξαρτάται σε μεγάλο βαθμό από τον κινητήρα που χρησιμοποιείται αρχιτεκτονική. Δυστυχώς, η UE4 υπολείπεται κάπως από αυτή την άποψη».

Συγκεκριμένα, το Unreal Engine 4, σύμφωνα με τον προγραμματιστή, τοποθετεί τη δημιουργία ηθοποιών (αντικείμενα/χαρακτήρες) και widget (UI και επικάλυψη) στο ίδιο νήμα CPU με το παιχνίδι. Αυτό σημαίνει ότι όποτε το παιχνίδι θέλει, για παράδειγμα, να φορτώσει έναν νέο χαρακτήρα, έχει προτεραιότητα στο νήμα. Ο Miyashita λέει ότι «αυτό μπορεί να έχει ως αποτέλεσμα τη δημιουργία πολύπλοκων ηθοποιών και γραφικών στοιχείων να μπλοκάρουν το νήμα του παιχνιδιού για μεγάλο χρονικό διάστημα». Αυτό είναι τραυλισμός.

Η λύση είναι οι ασύγχρονες πράξεις. Ο Miyashita λέει ότι η ομάδα χρησιμοποιεί εργαλεία ανάλυσης για να εντοπίσει τι κάνει η CPU καθώς φέρονται αντικείμενα και ότι καταβάλλουν προσπάθεια να μετακινήσουν αυτές τις εργασίες σε διαφορετικά νήματα, ώστε το παιχνίδι να μην επιβραδύνεται κάτω. Αυτή η συγκεκριμένη στόχευση μπορεί επίσης να βοηθήσει στη φόρτωση πόρων. Η μετακίνηση αυτών των λειτουργιών σε μια παράλληλη δομή μπορεί να αποφύγει τις παγίδες του τραυλισμού ροής που υπάρχουν σε παιχνίδια όπως Νεκρό χώρο.

Ο δρόμος προς τα εμπρός για τις θύρες υπολογιστή

Η Layla θωρακίζεται με μια φασματική ομπρέλα στο Redfall.

Τα παιχνίδια που βγαίνουν σήμερα σε καταστροφικές καταστάσεις ξεκίνησαν την ανάπτυξή τους πριν από χρόνια, οπότε αν και είμαι αισιόδοξος ότι οι εκδόσεις για PC θα βελτιώνονται όσο συνεχίζεται η χρονιά, μπορεί να περάσουν αρκετά χρόνια μέχρι να δούμε αυτά τα βασικά ζητήματα απευθύνεται.

Ο Whitten λέει ότι «οι προγραμματιστές ανησυχούν για την απόδοση όσο και οι παίκτες», και αυτό είναι ένα συναίσθημα που έχω ακούσει πολλές φορές. Υπάρχουν τρόποι για να βελτιστοποιήσετε τις εκδόσεις υπολογιστή, από προ-αποθήκευση shaders έως ασύγχρονες λειτουργίες έως επικύρωση σε μεγάλη ποικιλία υλικού. Αλλά η πραγματικότητα είναι ότι οι προγραμματιστές δεν μπορούν να υπολογίσουν τα πάντα, λόγω χρόνου ή χρημάτων, και συνήθως και τα δύο.

Ο δρόμος προς τα εμπρός εδώ είναι απλός. Πρώτα, ενημερώστε τους εκδότες αυτών των παιχνιδιών ότι προτιμάτε να δείτε μια καθυστέρηση παρά ένα χαλασμένο παιχνίδι. Το να φωνάζεις στους προγραμματιστές δεν θα κάνει πολλά - γνωρίζουν ήδη το πρόβλημα και πιθανότατα θα ήθελαν να λυθεί το ίδιο και εσύ. Δεύτερον, να είστε προσεκτικοί σχετικά με την παραλαβή ενός νέου παιχνιδιού για υπολογιστή την ημέρα κυκλοφορίας. Είναι δύσκολο να είσαι υπομονετικός όταν ανυπομονείς για κάτι (πιστέψτε με, το ξέρω), αλλά να περιμένετε να αγοράσετε ένα παιχνίδι μέχρι το τα ζητήματα που έχουν επιδιορθωθεί στέλνει ένα ισχυρό μήνυμα στους εκδότες να επενδύσουν περισσότερο χρόνο και πόρους για να διασφαλίσουν ότι τα παιχνίδια είναι γυαλισμένα στον υπολογιστή.

Είναι εύκολο να ξεχάσουμε ότι αυτή είναι ακόμα αχαρτογράφητη περιοχή. Τώρα περισσότερο από ποτέ, τα παιχνίδια φτάνουν στον υπολογιστή την ίδια μέρα που φτάνουν στις κονσόλες, σε αντίθεση με πριν από μερικά χρόνια, όπου οι θύρες PC έφτασαν μήνες (ή και χρόνια) αργότερα. Πριν από δύο γενιές κονσολών, τα περισσότερα παιχνίδια αποστέλλονταν μόνο την ίδια ημέρα σε μία πλατφόρμα. στην προηγούμενη γενιά, ήταν δύο. Τώρα, οι προγραμματιστές αναμένεται να αποστέλλουν σε τρεις πλατφόρμες τουλάχιστον την ίδια ημέρα, και μερικές φορές πάνω από πέντε, εάν έχουν μια έκδοση τελευταίας γενιάς.

Δεν είναι δύσκολο να καταλάβουμε γιατί υπάρχουν προβλήματα στον υπολογιστή, δεδομένου αυτού του πλαισίου, αλλά ελπίζουμε ότι περισσότερες εκδόσεις είναι στο δρόμο.

Αυτό το άρθρο είναι μέρος του ReSpec – μια συνεχιζόμενη διεβδομαδιαία στήλη που περιλαμβάνει συζητήσεις, συμβουλές και εμπεριστατωμένες αναφορές σχετικά με την τεχνολογία πίσω από τα παιχνίδια υπολογιστή.

Συστάσεις των συντακτών

  • Προσπάθησα να ξαναζήσω την ξεχασμένη κληρονομιά του Halo ως franchise Mac — και ήταν μια καταστροφή
  • Οι χειρότερες θύρες υπολογιστή όλων των εποχών — και γιατί ήταν τόσο κακές
  • Το Star Wars Jedi: Survivor βομβαρδίζεται στο Steam ως μια «ολική χάλια» θύρα υπολογιστή
  • Πώς το Unreal Engine 5 αντιμετωπίζει το μεγαλύτερο πρόβλημα στα παιχνίδια υπολογιστή
  • Το AI έρχεται για τα παιχνίδια του υπολογιστή σας, αλλά θα πρέπει να είστε ενθουσιασμένοι, όχι να ανησυχείτε