DirectX 12: γιατί είναι σημαντικά

Τα DirectX 12, που ανακοίνωσε η Microsoft πριν λίγες ημέρες, δεν αποτελούν μόνο την τελευταία έκδοση της γνωστής λύσης της όσον αφορά στο gaming σε Windows, αλλά και μια απαιτούμενη… αναζωογονητική πνοή στα PCs.directx_004.jpg

Και εκεί που τα DirectX είχαν… βαλτώσει, εδώ και χρόνια, στον αριθμό 11, η Microsoft ανακοίνωσε επίσημα την επικείμενη έλευση των DirectX 12, αναφέροντας, μάλιστα, και αρκετές πληροφορίες για αυτά. Πληροφορίες που μπορείτε πια να βρείτε και στο επίσημο σχετικό άρθρο για αυτά.

Για να μην σας κουράζουμε με περιττές τεχνικές λεπτομέρειες, θα συνοψίσουμε το γιατί είναι σημαντικά για το gaming στους υπολογιστές, αλλά και για την ίδια την Microsoft.

Πρώτα από όλα, τα υπάρχοντά DirectX 11 αποτέλεσαν μια μετεξέλιξη των DirectX 10 και εμφανίστηκαν πάνω που καθιερώνονταν οι πολυπύρηνοι επεξεργαστές. Τότε οι GPUs ήταν ακόμη κυρίως GPUs, “λύσεις παρουσίασης γραφικών”, και όχι τόσο “προγραμματίσιμες” όσο οι σημερινές εκδοχές τους – που χαρακτηρίζονται πια και επίσημα από τους κατασκευαστές τους ως “συνεπεξεργαστές”. Αποτέλεσμα, η κυρίαρχη λύση όσον αφορά στην δημιουργία παιχνιδιών στα Windows να μπορεί άνετα να χαρακτηριστεί ως… απομεινάρι του παρελθόντος! Διότι ναι μεν μπορεί τα παιχνίδια να έχουν εξελιχθεί από τότε, αλλά η τεχνολογική υποδομή τους, τα ίδια τα DirectX, όχι.

DirectX_12_-_006.jpg

Τα DirectX 12, λοιπόν, απευθύνονται στις λύσεις του παρόντος και του μέλλοντος, υποστηρίζοντας με τον καλύτερο δυνατό τρόπο τόσο πολυπύρηνους επεξεργαστές, όσο και την αρμονική συνύπαρξη και συνεργασία τους με τις GPUs. Κατά την ομιλία της Microsoft στην GDC παρουσιάστηκε, για παράδειγμα, ο φόρτος ενός σύγχρονου παιχνιδιού σε έναν σύγχρονο επεξεργαστή Core i7, στα DirectX 11 και 12. Στα πρώτα, ο τίτλος χρησιμοποιούσε κυρίως τον έναν από τους πυρήνες του επεξεργαστή, με τους άλλους να παίζουν βοηθητικό ρόλο. Στα DirectX 12 διαμοίραζε καλύτερα τις επιμέρους διεργασίες του παιχνιδιού, με αποτέλεσμα ο φόρτος να είναι ισομερής ανάμεσα στους πυρήνες. Έτσι, με αυτά θα έχουμε καλύτερη εκμετάλλευση των επεξεργαστών και, ως αποτέλεσμα, ακόμη καλύτερες επιδόσεις.

Crysis_3_007

Σημαντικότερο για αυτές – τις επιδόσεις – είναι, όμως, το ότι όπως και το ανταγωνιστικό πρότυπο Mantle που πρότεινε πριν λίγο καιρό η AMD, έτσι και αυτά θα εμπεριέχουν νέους τρόπους επικοινωνίας με το hardware, ώστε οι προγραμματιστές να το εκμεταλλεύονται σε ακόμη “χαμηλότερο” επίπεδο.

Αυτό μπορείτε να φανταστείτε σαν τα διαφορετικά… φλούδια ενός κρεμμυδιού! Στο κέντρο του βρίσκεται το hardware, και “γύρω” από αυτό τα DirectX, ή το Mantle, ή κάποιο άλλο API “επικοινωνίας” με αυτό. Οι προγραμματιστές “μιλάνε” στο hardware μέσω του API, αλλά και όποιου πρόσθετου λογισμικού τα “καπακώνει” ως ένα “κέλυφος”. Κάθε πρόσθετο “κέλυφος” ισοδυναμεί με διευκολύνσεις για τον προγραμματιστή με αντάλλαγμα μικρότερη ευελιξία ή χαμηλότερες επιδόσεις.

Για παράδειγμα, ακόμη και η Unreal Engine μπορεί να λειτουργήσει ως ένα “κέλυφος” για τη δημιουργία ενός παιχνιδιού – με τον πιο… “junior” developer να την χρησιμοποιεί στις απολύτως default ρυθμίσεις της, δίχως να “εμβαθύνει” καν σε κώδικα που θα αφορά τα ίδια τα DirectX. Αχέμ. Ξεφύγαμε – αλλά “για να γίνει κατανοητή η υπόθεση”.

DirectX_12_-_005.jpg

Τα DirectX 12, λοιπόν, αφαιρούν σε κάποια σημεία και από κάποιο “κέλυφος”, επιτρέποντας αμεσότερη πρόσβαση στο hardware στους developers – με αποτέλεσμα, προφανώς, το αντίστροφο από το πρόβλημα των APIs που προαναφέραμε: υψηλότερες επιδόσεις, μεγαλύτερη ευελιξία, με αντάλλαγμα λίγο δυσκολότερο και περισσότερο κώδικα από πλευράς των devs. Αν, βέβαια, θέλουν να εκμεταλλευτούν κάτι τέτοιο. Όσοι το κάνουν θα μπορούν να μας δώσουν ακόμη εντυπωσιακότερους τίτλους που θα… ξεζουμίζουν ακόμα καλύτερα τους υπολογιστές μας.

Και είναι σημαντικό και αυτό το “τους υπολογιστές μας” αφού αφορά σε μεγάλο βαθμό όντως τους… σημερινούς υπολογιστές μας. Όπως λέμε αυτούς που χρησιμοποιούμε εδώ και τώρα, αυτή τη στιγμή, και όχι αυτούς που θα αγοράσουμε μεθαύριο. Διότι τα DirectX 12, αντίθετα με το τι είχαμε συνηθίσει με τους προγόνους τους, δεν θα απαιτούν ντε και καλά και νέο hardware. Ούτε, όμως, θα λειτουργούν τέλεια και στο σημερινό. Ή μάλλον… Ας το εξηγήσουμε διαφορετικά.

DirectX_12_-_004.jpg

Αντίθετα με τους προγόνους τους, τα DirectX 12 θα εμφανιστούν ως ένα νέο υβριδικό API, που θα εκμεταλλεύεται στο έπακρο τόσο αρκετό από το υπάρχον hardware, όσο και αυτό που θα κυκλοφορήσει παράλληλα με εκείνα, στο μέλλον. Από τη μία είναι σχεδιασμένα ώστε να αποτελούν μια ακόμη καλύτερη λύση από σημερινά DirectX 11 για τις επίσης σημερινές κάρτες γραφικών, από την άλλη θα υποστηρίζουν και τα νέα χαρακτηριστικά που “θα φέρουν στο τραπέζι” οι μελλοντικές κάρτες γραφικών.

Το “σημερινό hardware”, όμως, προφανώς δεν απευθύνεται και σε όλο το hardware. Αν για παράδειγμά κάποιος έχει κρατήσει τον Pentium 2 με την αγαπημένη του κάρτα γραφικών της 3dfx, μην περιμένει πώς τα DirectX 12 θα τον σώσουν. Τα DirectX 12 Θα υποστηρίζουν ένα σημαντικό κομμάτι του hardware που πωλείται σήμερα στα καταστήματα, και που ίσως έχει κανείς ήδη στον υπολογιστή του, με τις περισσότερες κάρτες γραφικών που υποστηρίζουν πλήρως τα DirectX 11 να δηλώνουν συμβατές και με τα 12. Οι παλαιότερες… μάλλον ατύχησαν.

DirectX_12_-_002.jpg

Το ανησυχητικό, όμως, είναι πως ίσως η Microsoft αποφασίσει να κάνει με αυτά ότι έκανε και με τα DirectX 10 στα Windows XP: να τα κρατήσει ένα προνόμιο για την επόμενη έκδοση των Windows, εμμέσως πλην σαφώς… εκβιάζοντας τους gamers σε μια αναβάθμιση. Και αν και η Microsoft δεν έχει ανακοινώσει κάτι τέτοιο, σε ερώτηση που της τέθηκε στην GDC για το αν θα τα διαθέσει και στα Windows 7, οι εκπρόσωποι της προτίμησαν να μην δώσουν μία απάντηση.

Όσο για το “γιατί είναι σημαντικά για την ίδια την Microsoft”, που αναφέραμε και στην εισαγωγή μας;

DirectX 11 006

Η Microsoft κάποτε ήταν κυρίαρχη στο χώρο των υπολογιστών, και στο ενδιάμεσο προσπάθησε να χωθεί και στον χώρο του mobile και του gaming. Και ως ένα σημείο τα κατάφερε και στις δύο περιπτώσεις. Καθώς, όμως, ασχολούνταν με αυτά, άρχισε να χάνει το παιχνίδι στο χώρο των PC. Τα Windows άρχισαν να πέφτουν, το Linux να ανεβαίνει, και καθώς άρχισε να αγνοεί τα παιχνίδια στους υπολογιστές για να δώσει προτεραιότητα στο Xbox, τσουπ, εμφανίστηκε και η υπόσχεση των Steam Machines. Τα οποία ναι μεν οι περισσότεροι αντιμετωπίζουν ως κονσόλες, αλλά δεν θα πρέπει να ξεχνάμε πως πρόκειται για κανονικούς υπολογιστές με ένα εναλλακτικό λειτουργικό σύστημα. Και μπορεί όταν κυκλοφορήσουν, αρχικά, να διαθέτουν κυρίως παιχνίδια, αλλά αν επεκταθούν αρκετά θα αρχίσει να εμφανίζεται και άλλο λογισμικό για αυτά.

Steam_Controllers_002.jpg

Δεν αποκλείεται, λοιπόν, αν το πείραμα της Valve πετύχει, σε πέντε χρόνια από τώρα το SteamOS να εχει… αντικαταστήσει τα Windows! Μπορεί να φαίνεται ασύλληπτο, αλλά για σκεφτείτε πόσο “πετυχημένη” είναι η τελευταία έκδοση των Windows, τα Windows 8, και τι τάση έχει η αγορά των υπολογιστών (πτωτική, Μπάμπη, σταθερά πτωτική).

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

Το ίδιο λάθος, δηλαδή, που είχε κάνει και μετά Windows Mobile πριν εμφανιστεί η Apple με το iOS.

Το ίδιο λάθος που έκανε με το Xbox One πριν εμφανιστεί το PlayStation 4.

Το ίδιο λάθος που έχει κάνει πάλι και πάλι στο παρελθόν, υποτιμώντας τον ανταγωνισμό και θεωρώντας εαυτόν ανώτερο όλων των άλλων.

titanfall_007.jpg

Η επικείμενη κυκλοφορία των νέων DirectX είναι, λοιπόν, μια αναγκαία κίνηση ως προσπάθεια όχι μόνο να κερδίσει και πάλι τους gamers, αλλά και να συμβάλει στην ανάκαμψη της αγοράς των υπολογιστών, η οποία, τώρα φαίνεται να συνειδητοποιεί, είναι άρρηκτα δεμένη με τα έσοδα της. Στο mobile το έχασε εδώ και χρόνια. Στο gaming φαίνεται πως το χάνει με τον εγωισμό της με το Xbox One. Στους υπολογιστές κοντεύει να το χάσει, πια, ολοκληρωτικά. Αν δεν κάνει κάποιες κινήσεις για να συνεχίσει να διατηρεί την κυριαρχία των Windows αλλά και λύσεων όπως το Office σε αυτούς, σύντομα θα βρεθεί εκτός και σε αυτό τον χώρο – τον οποίο, ω, τι ειρωνεία, η ίδια βοήθησε να αναπτυχθεί και εξελιχθεί!

old_ibm_pcs_001.jpg

Bonus, πως οι αυξημένες επιδόσεις των νέων DirectX, τα οποία έχει δηλώσει πως θα δούμε και στο νέο Xbox One, ίσως καταφέρουν να κλείσουν λίγο την ψαλίδα στη διαφορά επιδόσεων ανάμεσα σε αυτό και το PlayStation 4, που έχει πια καταντήσει αστεία! Έτσι, με μια κίνηση, η Microsoft επιχειρεί να κερδίσει και πάλι όχι σε μια αλλά σε δύο διαφορετικές αγορές: και στους υπολογιστές, και στο gaming. Αν δεν τα καταφέρει, και μαζί με το mobile, χάσει ολοκληρωτικά και το gaming και τους υπολογιστές, τι της μένει να κάνει; Παίζει και να την δούμε να… εξάγει φιστίκια σε 10 χρονιά από τώρα![/ody]

GatesBSOD
...γνωστός και ως Οδυσσέας Κουράφαλος, αρχικός υπεύθυνος για το unregistered. Συντάκτης, γραφίστας, "μαλτιμηντιάς", φανατικός της science fiction και των αστείων γατιών στου ιντερνέτ. "Δηλώνω graphics whore" (παίζω Ms. Pac-Man στο MAME με 2xSAL και το πρώτο Max Payne με FXAA antialiasing). Load "unreg*",8,1.