DirectX 11 kontra DirectX 12: co jest lepsze w grach?

Opublikowany: 2023-04-01
Monitor do gier Samsung na targach CES 2023
Josh Hendrickson / How-To Geek
Zwykle DirectX 12 zapewnia lepsze wrażenia z gry. Może to obejmować lepszą liczbę klatek na sekundę i zaawansowane efekty wizualne. Ale jeśli grasz w gry na starszym sprzęcie, może się okazać, że DirectX 11 poprawia stabilność gry.

Wersja DirectX, której wybierzesz podczas grania na komputerze PC, może znacząco wpłynąć na wydajność. Ale tylko dlatego, że DirectX 12 jest nowszy, czy to oznacza, że ​​zawsze jest to najlepszy wybór? Przyjrzyjmy się różnicom między DirectX 11 i 12 i zbadajmy, która wersja jest lepsza do gier.

Spis treści

Co to jest DirectX?
DirectX 11 vs. 12: jaka jest różnica?
Czy DX 11 czy DX 12 jest lepszy do gier?
Którego DirectX powinienem używać?
Często Zadawane Pytania

Co to jest DirectX?

DirectX to zbiór interfejsów API (interfejsów programowania aplikacji) stworzonych przez firmę Microsoft i zawartych w systemie operacyjnym Windows. Pakiet API obejmuje Direct3D, DirectPlay, DirectSound, DirectDraw i kilka innych. Został zaprojektowany, aby pomóc twórcom gier zapewnić, że ich oprogramowanie działa z jak największą liczbą różnych konfiguracji sprzętowych.

Zamiast dostarczać indywidualne sterowniki dla wielu komponentów graficznych, wideo i dźwiękowych, twórcy gier mogą skoncentrować się na programowaniu pod kątem zgodności z DirectX i wiedzieć, że ich oprogramowanie będzie działać. Nieważne, czy użytkownik końcowy ma np. Radeona RX 7900, czy Geforce RTX 3060.

Ta standaryzacja interfejsu między oprogramowaniem a sprzętem jest kluczem do boomu gier komputerowych w ciągu ostatnich ponad 20 lat. Chociaż dostępne są inne pakiety API, w tym Vulkan i OpenGL, prawie każda udana gra ostatnich dwóch dekad używa lub obsługuje DirectX.

DirectX 11 vs. 12: jaka jest różnica?

Główną i być może najważniejszą różnicą między DX 11 a DX 12 jest poziom interakcji z twoim sprzętem.

DirectX 12 wykorzystuje interfejsy API niskiego poziomu, które działają w warstwie oprogramowania blisko sprzętu. Oznacza to, że ma bardziej bezpośrednią kontrolę nad GPU i może pracować wydajniej. DirectX 11 to interfejs API wysokiego poziomu, co oznacza, że ​​chociaż nadal ma dostęp do GPU i innego sprzętu, jest bardziej usunięty i ma tylko bardziej ogólną kontrolę nad optymalizacjami.

Ten niski poziom dostępu do optymalizacji sprzętu sprawia, że ​​praca z DirectX 12 jest trudniejsza i bardziej czasochłonna. Prawdopodobnie dlatego, pomimo wydania DX 12 w 2015 roku, gry wciąż są opracowywane pod kątem łatwiejszego i często bardziej stabilnego DirectX 11.

Wybieranie wersji directx dla Icarus na Steamie
Gry takie jak Icarus poproszą cię o wybór między DX11 a DX12.

Drugą różnicą, którą należy wziąć pod uwagę, patrząc na DX 11 i 12, jest wykorzystanie rdzenia procesora. Przez długi czas gracze nie mieli powodu, by wybierać procesor z więcej niż czterema rdzeniami, ponieważ twórcy gier mieli trudności z tworzeniem gier, które mogłyby wydajnie wykorzystywać więcej. Dzięki DirectX 12 firma Microsoft rozwiązała ten problem, wbudowując obsługę przetwarzania wielordzeniowego w interfejs API. Podczas grania w grę przy użyciu DX 12 więcej rdzeni oznacza lepszą wydajność.

Możliwość dostępu do wielu rdzeni jest połączona z kolejną nową funkcją DX 12: obliczeniami równoległymi. W DirectX 11 operacje są wykonywane w liniowej kolejce, a funkcje takie jak kompresja tekstur, symulacja fizyki, generowanie cieni i ładowanie danych procesora następują jedna po drugiej. DirectX 12 umożliwia wykonywanie tego typu operacji równolegle i w wielu wątkach, co skutkuje zauważalną poprawą wydajności.

DirectX 12 wprowadza również obliczenia asynchroniczne. Pozwala to na wykonywanie operacji bez czekania na zakończenie poprzedniej. Na przykład procedurę generowania cieni w grze można wykonać przed zakończeniem operacji kompresji tekstur.

Niewielkie optymalizacje osiągnięte dzięki zastosowaniu obliczeń równoległych i asynchronicznych, być może setki na sekundę, sumują się i tworzą rdzeń różnicy między DX 11 a DX 12. DirectX 12 jest, mówiąc prościej, znacznie wydajniejszy w komunikacji między oprogramowaniem do gier i sprzętu komputerowego.

Czy DX 11 czy DX 12 jest lepszy do gier?

Ogólnie rzecz biorąc, zobaczysz lepszą wydajność gry podczas korzystania z DirectX 12. Jest to duży krok naprzód w stosunku do DirectX 11 pod względem optymalizacji i wydajności między oprogramowaniem a kompatybilnym sprzętem, a każda gra, która została zaprogramowana tak, aby w pełni wykorzystać zalety, będzie działać lepiej niż w przypadku korzystania ze starszego interfejsu API.

Możesz nie widzieć tego samego poziomu zwiększonej wydajności w każdej grze, głównie dlatego, że nie każda gra wymaga lub może korzystać z rodzaju optymalizacji niskiego poziomu, które oferuje DX 12. NVIDIA sugeruje, że użycie DirectX 12 z RTX 3090 może zwiększyć liczbę klatek na sekundę w Assassins Creed Valhalla nawet o 24%, a Cyberpunk 2077 o 20% w stosunku do DX 11. Jednak Far Cry 6 i The Division 2 otrzymują tylko 5% wzrost.

DirectX 12 obsługuje również szerszy zakres zaawansowanych funkcji GPU, takich jak Ray Tracing i VRS (Variable Rate Shading). Jeśli gra i Twoja karta graficzna mogą korzystać z tych efektów, wybór DX 12 bez wątpienia zapewni Ci lepsze wrażenia wizualne.

Którego DirectX powinienem używać?

Nie we wszystkich grach można wybierać między korzystaniem z DirectX 11 i 12. W rzeczywistości liczba gier, które oferują wybór, jest wciąż dość niska. Nawet gry zgodne z DirectX 12 często po pierwszej instalacji domyślnie korzystają z DirectX 11. DirectX 11 może być nawet lepszym wyborem na starszym sprzęcie komputerowym, wyłącznie po to, aby uniknąć problemów ze zgodnością.

narzędzie diagnostyczne DirectX w systemie Windows 10

Ale większość graczy PC zauważy poprawę wydajności, szczególnie liczby klatek na sekundę, po przejściu na DirectX 12, gdy będzie dostępny. Jeśli istnieje możliwość wyboru w ustawieniach gry, warto wypróbować obie wersje, aby zobaczyć, która działa najlepiej.

Często Zadawane Pytania

Jaki mam DirectX?

Jeśli używasz systemu Windows 10 lub 11, na komputerze powinien być zainstalowany program DirectX 12. Jest dołączony do obu systemów operacyjnych. Możesz to sprawdzić, otwierając okno dialogowe Uruchom i wpisując „dxdiag”, aby otworzyć narzędzie diagnostyczne DirectX.

Czy muszę zainstalować DirectX 12?

Nie, zwykle nie musisz ręcznie instalować DirectX 12, ponieważ jest on dostarczany z systemem Windows. Jeśli gra wymaga do działania określonej wersji DirectX 12, zostaniesz poproszony o jej zainstalowanie podczas instalacji gry. Możesz także zaktualizować DirectX, gdy pojawią się nowe wersje.

Czy DirectX 12 zwiększa liczbę klatek na sekundę?

O ile DirectX 12 został prawidłowo zaimplementowany przez twórcę gry, korzystanie z niego powinno skutkować wyższą liczbą klatek na sekundę. Jest mało prawdopodobne, że zobaczysz magiczne podwojenie liczby klatek na sekundę, ale wzrost o 20-25% w porównaniu z DX 11 nie jest niczym niezwykłym.

Co to jest DirectX 12 Ultimate?

DirectX 12 Ultimate to najnowsza wersja DirectX 12, wydana w 2020 roku. Została zaprojektowana jako ujednolicona biblioteka API dla Windows i konsol Xbox i wprowadziła kilka nowych funkcji, w tym DirectX Raytracing i Mesh Shading. Nie wszystkie karty graficzne obsługują DirectX 12 Ultimate, więc dostępność zależy od posiadanego sprzętu.

POWIĄZANE: Co to jest DirectStorage w systemach Windows 11, Windows 10 i Xbox?