Το DXVK, που δημιουργήθηκε αρχικά για Linux, μπορεί επίσης να σας βοηθήσει να "διορθώσετε" παλιά παιχνίδια στα Windows και να ενισχύσετε την απόδοσή τους. Να γιατί και πώς.

Το Direct3D αποτελεί μέρος του παιχνιδιού των Windows εδώ και δεκαετίες, ενοποιώντας το τμηματοποιημένο τοπίο υλικού υπολογιστή κάτω από μια ομπρέλα με δυνατότητα 3D. Ωστόσο, μια εφαρμογή που δημιουργήθηκε κυρίως για Linux, το DXVK, είναι μερικές φορές μια πολύ καλύτερη επιλογή για χρήση, ακόμα κι αν χρησιμοποιείτε Windows.

Θα θέλατε καλύτερη συμβατότητα και, το πιο σημαντικό, απόδοση για τις εφαρμογές και τα παιχνίδια σας; Στη συνέχεια, πρέπει να δοκιμάσετε το DXVK.

Το πρόβλημα με το DirectX στα Windows

Η Microsoft δημιούργησε το DirectX ως μια "ενοποιημένη λύση" που βοήθησε τους προγραμματιστές να χρησιμοποιήσουν τις δυνατότητες υλικού οποιουδήποτε υπολογιστή. Αντί να γράφουν διαφορετικό κώδικα για κάθε τμήμα υλικού, οι προγραμματιστές λογισμικού θα μπορούσαν να «στοχεύσουν» τις βιβλιοθήκες DirectDraw (2D γραφικά), Direct3D (3D με επιτάχυνση υλικού) και DirectSound (ήχος). Στη συνέχεια, αφήστε τη λύση της Microsoft να «μεταφράσει» τον κώδικά της στη «μητρική γλώσσα» κάθε τμήματος υλικού.

instagram viewer

Το DirectX έγινε μια αναντικατάστατη βασική τεχνολογία στα Windows και από τότε εξελίσσεται. Ωστόσο, υπάρχει ένα μικρό πρόβλημα με το Direct3D: δεν είναι 100% συμβατό προς τα πίσω.

Η Microsoft και οι δημιουργοί των GPU που υποστηρίζουν το Direct3D API (όπως στο "Nvidia, AMD και Intel"), έχουν περιστασιακά διέκοψε την υποστήριξη για λειτουργίες που εισήχθησαν σε προηγούμενες εκδόσεις του Direct3D, αλλά που δεν απέκτησαν ποτέ έλξη. Έτσι, ορισμένα παλαιότερα παιχνίδια ενδέχεται να μην εκτελούνται σωστά σε μια σύγχρονη GPU με τις πιο πρόσφατες εκδόσεις του Direct3D.

Τι είναι το Vulkan;

Υποτίθεται ότι μια πιο «ανοιχτή» απάντηση στο Direct3D κλειστού κώδικα της Microsoft, το OpenGL ήταν μια μεταλλαγμένη έκδοση των βιβλιοθηκών τρισδιάστατων γραφικών που χρησιμοποιούνται στους σταθμούς εργασίας γραφικών της Silicon Graphics.

Το OpenGL, ωστόσο, πάντα υστερούσε, όσον αφορά τα χαρακτηριστικά, σε σύγκριση με το Direct3D της Microsoft. Τελικά, φάνηκε πιο λογικό να επανεκκινήσει η προσπάθεια. Γι' αυτό δημιουργήθηκε το Vulkan, γνωστό και ως «OpenGL Next», προσφέροντας καλύτερη απόδοση και αυξημένο έλεγχο του υλικού.

Όπως το OpenGL, και σε αντίθεση με το Direct3D της Microsoft με Windows, το Vulkan είναι "ανοιχτό" και cross-platform. Μπορείτε να χρησιμοποιήσετε το Vulkan σε Windows, Linux, ακόμα και smartphone. Αν και δεν υποστηρίζεται εγγενώς σε Mac, μπορεί να χρησιμοποιηθεί εκεί μέσω του MoltenVK.

Αυτή ήταν η σύντομη έκδοση. Για να μάθετε περισσότερα για το Vulkan, ανατρέξτε στο άρθρο μας στο ποιες είναι οι βιβλιοθήκες χρόνου εκτέλεσης Vulkan στα Windows.

Τι είναι το DXVK;

Το DXVK είναι ένα περιτύλιγμα, που "μεταφράζει" το Direct3D σε Vulkan. Στον ανθρώπινο κόσμο, ένας μεταφραστής μπορεί να είναι μεσολαβητής μεταξύ ενός Αγγλικού και ενός Γιαπωνέζου ομιλητή, δίνοντάς τους τη δυνατότητα να καταλαβαίνουν ο ένας τον άλλον. Ομοίως, τα "wrappers" ή "translation layers" μπορούν να "πάρουν" κώδικα γραμμένο για ένα συγκεκριμένο κομμάτι υλικού, πλατφόρμας ή API και να τον μεταφράσουν ώστε να εκτελεστεί σε άλλο.

Το DXVK αναπτύχθηκε αρχικά για Linux με υποστήριξη από τη Valve, η οποία το χρησιμοποιεί επίσης στο SteamOS και στο Steam Deck. Μπορείτε να μάθετε περισσότερα για αυτό στο άρθρο μας όπου είδαμε τι είναι το Steam Proton και πώς εκτελεί παιχνίδια των Windows στο Steam Deck.

Γιατί πρέπει να χρησιμοποιήσετε το DXVK στα Windows;

Εάν ένα παιχνίδι τρέχει ήδη καλά στο υλικό σας, δεν υπάρχει λόγος να χρησιμοποιήσετε το DXVK. Ωστόσο, ορισμένα παιχνίδια που έχουν γραφτεί για παλαιότερες εκδόσεις του DirectX δεν εκτελούνται "σωστά" (αν καθόλου) σε νεότερες εκδόσεις του DirectX και σύγχρονο υλικό.

Με τη "μετάφραση" του παλιού κώδικα Direct3D με σφάλματα στο πιο σύγχρονο Vulkan API, υπάρχει ελάχιστος αντίκτυπος στην απόδοση (αν υπάρχει). Ταυτόχρονα, τα προβληματικά παιχνίδια με κατεστραμμένα γραφικά ή λειτουργίες που λείπουν μπορεί να γίνουν ξανά πλήρως αναπαραγόμενα.

Δεδομένου ότι το Vulkan είναι στο ίδιο επίπεδο με το Direct3D 12, και τα δύο είναι πολύ καλύτερα (και πιο γρήγορα) από παλαιότερες εκδόσεις του Direct3D (όπως είδαμε όταν Συγκρίναμε το DirectX 11 με το DirectX 12), η "μετάφραση" παλαιών παιχνιδιών Direct3D σε Vulkan μπορεί μερικές φορές να βελτιώσει την απόδοση του παιχνιδιού.

Η δουλειά της Intel στις Arc GPU της είναι απόδειξη αυτού. Η Intel θα μπορούσε να προσπαθήσει να προσθέσει υποστήριξη για κάθε παλαιότερο τίτλο σε προγράμματα οδήγησης Arc GPU. Αντίθετα, η Intel αποφάσισε να εργαστεί για την περαιτέρω βελτίωση του DXVK. Τα αρχικά αποτελέσματα από το "πείραμα" της Intel οδηγούν σε 2 φορές ώθηση στην απόδοση για παλαιότερους τίτλους, με δεκάδες να μπορούν να αναπαραχθούν "μέσω" DXVK.

Πώς να χρησιμοποιήσετε το DXVK στα Windows

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

Ωστόσο, πρέπει να χρησιμοποιήσετε τη σωστή έκδοση DXVK που ταιριάζει με την έκδοση Direct3D που χρησιμοποιείται από το παιχνίδι σας.

Είναι πιθανώς πιο εύκολο αν προχωρήσουμε σε όλη τη διαδικασία μαζί για να δούμε πώς μπορείτε να κάνετε λήψη της πιο πρόσφατης έκδοσης του DXVK, να προσδιορίσετε την "τεχνολογία" του παιχνιδιού σας και να εγκαταστήσετε τα σωστά DLL στον κατάλληλο φάκελο.

Πώς να κατεβάσετε το DXVK

Το DXVK είναι λογισμικό ανοιχτού κώδικα και δωρεάν στη χρήση. Μπορείτε να βρείτε την τελευταία του έκδοση στο GitHub.

  1. Επισκεφθείτε το DXVK's επίσημη σελίδα GitHub και κάντε κλικ στο Αργότερο σύνδεσμος έκδοσης στα δεξιά της σελίδας, κάτω Εκδόσεις.
  2. Κάντε κύλιση προς τα κάτω στη σελίδα εκδόσεων και βρείτε το Περιουσιακά στοιχεία ενότητα της πιο πρόσφατης έκδοσης. Κάντε κλικ στο πιο πρόσφατο αρχείο DXVK tar.gz για να το κατεβάσετε. Τη στιγμή που γράφτηκε, ήταν η έκδοση 2.2.
  3. Αποθηκεύστε το αρχείο που κατεβάσατε κάπου, γιατί θα χρειαστεί να εξαγάγετε τα περιεχόμενά του στο φάκελο κάθε παιχνιδιού που θέλετε να εκτελέσετε με DXVK αντί για Direct3D.

Πώς να επιλέξετε τη σωστή έκδοση DXVK

Εάν χρειάζεται να μάθετε ποια έκδοση του Direct3D χρησιμοποιεί το παιχνίδι σας, ο ιστότοπος PC Gaming Wiki μπορεί να σας βοηθήσει.

  1. Επίσκεψη PC Gaming Wiki με το πρόγραμμα περιήγησής σας και χρησιμοποιήστε το πεδίο αναζήτησης επάνω δεξιά για να αναζητήσετε το παιχνίδι στο οποίο θέλετε να προσθέσετε το DXVK.
  2. Όταν βρείτε το παιχνίδι σας, επισκεφτείτε τη σελίδα του και μετακινηθείτε προς τα κάτω για να φτάσετε στο Αλλες πληροφορίες Ενότητα. Στρέψτε την προσοχή σας στους πίνακες API. Εκεί, στο Τεχνικές Προδιαγραφές και Υποστηρίζεται στήλες, θα δείτε την έκδοση του Direct3D που χρησιμοποιεί το παιχνίδι σας. Από κάτω, το Εκτελέσιμα, 32-bit, και 64-bit οι στήλες θα σας "πούν" ποια αρχιτεκτονική πρέπει να επιλέξετε.

Πώς να προσθέσετε DXVK στα παιχνίδια σας

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

  1. Ανοίξτε το αρχείο DXVK με τον αγαπημένο σας διαχειριστή αρχείων (για αυτό το άρθρο, χρησιμοποιούμε WinRAR) και εισαγάγετε τον μεμονωμένο φάκελο DXVK που θα δείτε εκεί.
  2. Στο εσωτερικό, θα βρείτε δύο υποφακέλους, έναν για κάθε αρχιτεκτονική υπολογιστή. Εισαγάγετε το σωστό για το παιχνίδι σας. Ακόμα κι αν το λειτουργικό σας σύστημα είναι 64 bit, όπως οι περισσότερες εκδόσεις των Windows σήμερα, εάν το παιχνίδι σας είναι 32 bit, θα πρέπει να πάτε για το φάκελο 32 bit.
  3. Επίλεξε το DXGI.DLL συν το σωστό DLL για την έκδοση του Direct3D το παιχνίδι σας χρησιμοποιεί. Όπως θα δείτε, υπάρχουν άλλα τρία DLL, ένα για καθεμία από τις προηγούμενες εκδόσεις του Direct3D: 9, 10 και 11.
  4. Βρείτε τον τοπικό φάκελο όπου είναι εγκατεστημένο το παιχνίδι σας και εντοπίστε τον υποφάκελο με το εκτελέσιμο αρχείο του ("το αρχείο από το οποίο εκτελείται το παιχνίδι"). Εξαγάγετε τα DLL από το προηγούμενο βήμα σε αυτόν τον φάκελο.

Πώς να δοκιμάσετε και να αξιολογήσετε το βελτιωμένο παιχνίδι σας

Εάν τρέχετε το παιχνίδι σας τώρα, θα πρέπει να χρησιμοποιεί Vulkan αντί για Direct3D και ελπίζουμε να έχει καλύτερη απόδοση.

Ακόμα κι αν δεν βλέπετε δραματικές αλλαγές στους ρυθμούς καρέ, μερικές φορές οι βελτιώσεις μπορούν να «αισθητοποιηθούν» με άλλους τρόπους. Για παράδειγμα, δοκιμάσαμε το DXVK με το κλασικό Batman: Arkham City σε υπολογιστή εξοπλισμένο με Ryzen 5900x, 64 GB μνήμης RAM και GPU Nvidia RTX 3070. Το υλικό μας ξεπερνούσε ήδη τις κορυφαίες προδιαγραφές αυτού του παλιού παιχνιδιού, επιτυγχάνοντας πολύ υψηλούς ρυθμούς καρέ. Ακόμα κι αν έφταναν ψηλότερα με τον Vulkan, η διαφορά δεν θα ήταν εύκολα αντιληπτή.

Ωστόσο, η δράση του παιχνιδιού ήταν πιο ομαλή. Οι μεταβάσεις μεταξύ οθονών, τα επίπεδα φόρτωσης και το πάτημα Alt + Tab ήταν σχεδόν άμεσες με το DXVK.

Πότε δεν πρέπει να χρησιμοποιείτε το DXVK

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

1. Το DXVK δεν βελτιώνει την απόδοση του παιχνιδιού

Εάν έχετε προσθέσει τα DLL DXVK στο παιχνίδι σας αλλά δεν είδατε καμία διαφορά μετά, μπορείτε να τα αφαιρέσετε ξανά αν θέλετε. Μπορείτε να διαγράψετε τα DLL που έχετε προσθέσει στο φάκελο ενός παιχνιδιού για να το κάνετε αυτό.

2. Το DXVK προκαλεί χειρότερη απόδοση ή εισάγει νέες δυσλειτουργίες

Μερικές φορές η προσθήκη DXVK σε ένα παιχνίδι μπορεί να έχει το αντίθετο αποτέλεσμα. Δυστυχώς, δεν υπάρχει τρόπος για έναν τελικό χρήστη να διορθώσει τέτοια προβλήματα.

Εμφανίστηκαν η δεξαμενή απόδοσης ενός παιχνιδιού ή οπτικές δυσλειτουργίες μετά την προσθήκη του DXVK; Βγείτε από το παιχνίδι και διαγράψτε τα DLL του DXVK από τον κατάλογό του.

3. Θέλετε να παίξετε το παιχνίδι σας στο Διαδίκτυο

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

Το DXVK μπορεί να μην "απατάει", αλλά εξακολουθεί να είναι μια "τροποποίηση παιχνιδιού" και θα μπορούσε να επισημανθεί ως τέτοιο.

4. Το παιχνίδι έχει ήδη ενσωματωμένη υποστήριξη Vulkan

Εάν ένα παιχνίδι χρησιμοποιεί ήδη το Vulkan API, όπως το Doom Eternal, δεν υπάρχει λόγος να ρυθμίσετε την έξοδο του σε Direct3D για να το μεταφράσετε στη συνέχεια σε Vulkan.

5. Το παιχνίδι χρησιμοποιεί Direct3D 12

Δεδομένου ότι το Direct3D 12 είναι σχεδόν εξ ολοκλήρου στο ίδιο επίπεδο με το Vulkan, δεν υπάρχει τίποτα να κερδίσετε μεταφράζοντας ένα υπερσύγχρονο API γραφικών σε ένα άλλο.

Βελτιώστε τα παλιά σας παιχνίδια με "Μεταφρασμένο" 3D στα Windows

Αυτό που ξεκίνησε ως τρόπος αναπαραγωγής περισσότερων παιχνιδιών με Windows στο Linux, κατέληξε να γίνει μια χρήσιμη λύση συμβατότητας και ενισχυτής απόδοσης. Επομένως, κρατήστε εύχρηστο ένα πρόσφατο αρχείο των DLL της DXVK. Προσθέστε τα σε οποιοδήποτε παιχνίδι όπου θέλετε να εξαλείψετε δυσλειτουργίες, να βελτιώσετε την απόδοσή του, να έχετε πιο ομαλή δράση εντός του παιχνιδιού και να βελτιώσετε την απόκρισή του.

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