Co to jest DirectX i dlaczego jest ważny?


DirectX to API lub interfejs programowania aplikacji. Działa jako pośrednik między kodem oprogramowania gier wideo a sprzętem używanym do ich odtwarzania. Bez DirectX granie w gry wideo nie byłoby tak bezbolesne jak obecnie, ale czym jest DirectX i dlaczego jest tak ważny?

DirectX to API, ale co to jest?

Powiedzieliśmy, że API to oprogramowanie, które pozwala grom komunikować się ze sprzętem, ale to duże uproszczenie. W końcu sterowniki sprzętu, które komunikują się z systemem operacyjnym, można również opisać w ten sam sposób.

To, co robi API, to standaryzacja katalogu poleceń i funkcji, o które programiści gier mogą poprosić sprzęt komputerowy. Jest to warstwa oprogramowania między grą a sprzętem, która tłumaczy dwa „języki” używane przez grę i urządzenie sprzętowe.

Mówiąc dokładniej, interfejs API komunikuje się ze sterownikami sprzętu w imieniu gry, a ponieważ zarówno gra, jak i sterowniki sprzętu zostały napisane do być zgodne z DirectX, a nie bezpośrednio ze sobą nawzajem, oznacza to, że rozmowa jest płynna.

Jeśli chcesz zagłębić się w API, HDG wyjaśnia: Co to jest interfejs API? to świetne miejsce na rozpoczęcie.

Złe stare dni przed DirectX

Więc ustaliliśmy, że DirectX to API, które stoi pomiędzy grą a sprzętem, który musi uruchomić, ale dlaczego gra wideo nie może po prostu komunikować się bezpośrednio z kartą graficzną, dźwiękową i tak dalej?

In_content_1 all: [300x250] / dfp: [640x360]->

Dokładnie tak było. W czasach MS-DOS i we wczesnych latach Windows gry wideo komunikowały się bezpośrednio ze sterownikami sprzętowymi.

Problem z tym podejściem polega na tym, że twórca gier musiał napisać kod dla każdego indywidualny produkt lub rodzina produktów. Jeśli grasz dzisiaj w klasyczną grę MS-DOS, zobaczysz wpisy dotyczące kart dźwiękowych takich marek, jak Creative SoundBlaster lub AdLib.

To były największe popularnych marek kart dźwiękowych, więc twórcy gier mogą wspierać większość klientów, ale nie wszystkich. Ostatecznie mniej znani producenci sprzętu stworzyliby produkty, które byłyby kompatybilne z tymi samymi sterownikami, co wielkie firmy. Dlatego w tamtych czasach otrzymaliśmy tak wiele kart zgodnych z Sound Blaster.

W rezultacie nawet jeśli masz najbardziej obsługiwany sprzęt, nie ma gwarancji, że dana gra będzie działać. z komputerem. DirectX rozwiązał ten problem.

DirectX ułatwia pracę programistom i producentom sprzętu

Każda wersja DirectX (a my do DirectX 12) określa zestaw sprzętu i oprogramowania funkcje, które musi posiadać kompatybilny sprzęt. Innymi słowy, jeśli chcesz, aby Twoja karta graficzna miała certyfikat zgodności z najnowszą wersją DirectX, musi mieć wbudowany minimalny zestaw funkcji.

Programiści piszą wtedy swoje gry kompatybilny z określoną kartą graficzną, ale zgodny z samym DirectX. Innymi słowy, zarówno producenci sprzętu, jak i programiści gier standaryzują swoje produkty na DirectX i jako takie gwarantujemy, że każda gra i komponent sprzętowy zaprojektowany do współpracy z określoną wersją DirectX będzie dobrze ze sobą współgrał.

DirectX to „X” na Xboksie

Wszyscy wiedzą, że dwie największe nazwy na rynku konsol do gier wideo to PlayStation i Xbox, ale możesz nie wiedzieć, że oryginał nazwa tego ostatniego brzmiała początkowo „DirectX Box”.

Prawdopodobnie najlepiej będzie, jeśli Microsoft zdecydował się skrócić nazwę, ale jest to również bardzo dokładny opis konsoli. Pierwsza konsola Xbox była połączona ze sprzętem PC, działała z okrojoną wersją systemu Windows i DirectX. Jest to nadal aktualne dzięki najnowszym Konsole Xbox Series X i S..

Jedna duża zaleta chodzi o to, że przenoszenie gier między konsolą Xbox a komputerem z systemem Windows jest bardzo proste. Ponieważ są one w rzeczywistości tą samą platformą. PlayStation i Przełącznik Nintendo używają jednak własnych interfejsów API, co prowadzi nas do kolejnego ważnego faktu dotyczącego DirectX.

DirectX to nie jedyna gra w mieście

Chociaż DirectX stał się jednym z najważniejszych i najbardziej rozpowszechnionych interfejsów API, nie jest jedynym. Wiele różnych organizacji uznało, że istnieje potrzeba standaryzacji. Chociaż DirectX to API, które obejmuje wszystko, od grafiki po kontrolery gier, istnieją również interfejsy API, które koncentrują się tylko na jednym aspekcie, takim jak grafika.

Kiedy pierwsza karta graficzna 3D zaczęła być popularna w połowie lat 90. zapotrzebowanie na graficzne interfejsy API stało się ostre. Karty 3dFX Voodoo wykorzystywały zastrzeżony interfejs Glide API. OpenGL (Open Graphics Library) to otwarty standard, który pozostaje popularny do dziś i istnieje w swojej nowoczesnej formie jako Vulkan. Ponadto Apple ma Metal API na swoje własne urządzenia, a jest ich znacznie więcej w innych kategoriach urządzeń, takich jak telefony komórkowe i tablety.

Chociaż DirectX nie ma całkowitej dominacji na rynku, inne interfejsy API są pod wpływem tego, co Microsoft zdecydował się wprowadzić każda wersja DirectX. Biorąc to pod uwagę, nie dyktują wszystkim innym. Każda wersja DirectX jest tworzona w porozumieniu ze wszystkimi interesariuszami, więc relacje wydają się być bardziej wzajemne, niż można by przypuszczać.

DirectX nie jest czymś, o co musisz się martwić

Najważniejsze pytanie brzmi: do jakiego stopnia Ty, jako użytkownik, musisz się martwić o DirectX. W przeszłości, we wcześniejszych wersjach DirectX w starszych systemach Windows, trzeba było ręcznie zainstalować DirectX. W większości przypadków dana gra zawierała minimalną wersję DirectX, której potrzebowała. Gdyby ten instalator wykrył w systemie nowszą wersję tej generacji DirectX, po prostu nic by nie zainstalował.

Każda wersja DirectX (np. 9c, 11 & 12) to osobna rzecz, ale system Windows 10 jest dostarczany z preinstalowanymi kopiami. Twoje starsze gry będą działać dobrze na Twoim nowym, błyszczącym komputerze z systemem Windows 10.

O wiele ważniejszy jest wybór sprzętu. Zawsze możesz zaktualizować oprogramowanie lub pobrać odpowiednie oprogramowanie, aby gry retro działały, ale sprzęt, którego posiadasz, nie może zostać zmieniony bez aktualizacji lub nowego komputera.

Zgodność sprzętu z DirectX

Każdy element sprzętu, który ma związek z grami wideo lub jakąkolwiek inną aplikacją korzystającą z podobnej technologii, jest zasadniczo zgodny z najnowszą wersją DirectX w momencie jej wydania.

Jeśli jednak zostanie wydana nowa wersja DirectX, istnieje prawdopodobieństwo, że Twój istniejący sprzęt może nie być zgodny, jeśli brakuje w nim funkcji sprzętowej wymaganej przez nową wersję DirectX. Nie jest to jednak powód do natychmiastowej zmiany sprzętu!

Zawsze istnieje przejście okres, w którym gry obsługują wiele wersji DirectX. Na przykład obecnie typowe gry obsługują zarówno DirectX 11, jak i DirectX 12. Jeśli jednak szukasz nowego sprzętu (zwłaszcza GPU ), to dobrze jest kupić coś, co jest zgodne z najnowszą główną wersją DirectX. Ponieważ chcesz, aby Twój nowy zakup pozostał aktualny przez co najmniej kilka lat.

W tym czasie równie dobrze możesz sprawdzić, czy Twój nowy sprzęt jest zgodny z najnowszymi wersjami innych głównych konkurencyjne interfejsy API, takie jak Vulcan, również.

Powiązane posty:


22.03.2021