Image default
PC/GryPoradniki

Jak poprawić kompatybilność starych gier na Windows 11 ?

Direct3D od długiego czasu stanowi nieodłączny element gier wydawanych na system Windows, ułatwiając pisanie gier pod ten system.

Microsoft stworzył DirectX jako “zintegrowane rozwiązanie” które pomaga programistom korzystać z możliwości sprzętu każdego komputera. Zamiast tworzyć oddzielny kod dla każdego podzespołu, programiści mogą skorzystać z  gotowych bibliotek DirectX, takich jak DirectDraw (grafika 2D), Direct3D (akceleracja sprzętowa 3D) i DirectSound (dźwięk). Sprawia to, że gry bez problemu można uruchomić na różnych konfiguracjach sprzętowych, gdyż rozwiązanie Microsoftu “tłumaczy” ich kod gry na “język natywny” każdego podzespołu.

Niestety te rozwiązanie nie jest w 100% idealne. Microsoft oraz twórcy kart graficznych  wspierających okazjonalnie wycofują wsparcie dla funkcji wprowadzonych w poprzednich wersjach Direct3D, które nie zdobyły popularności, bądź są już po prostu przestarzałe i zostały zastąpione lepszymi rozwiązaniami.

W wyniku tego niektóre starsze gry mogą nie działać poprawnie na nowoczesnych kartach graficznych z najnowszymi wersjami Direct3D. Dlatego też warto rozważyć skorzystanie z DXVK w celu poprawy kompatybilności gier napisanych na starsze wersje DirectX, tłumacząc je na Vulkan API.

Czym jest Vulkan API ?

Vulkan API to zaawansowany interfejs programowania aplikacji (API) grafiki 3D, opracowany przez Khronos Group. Jego celem jest zapewnienie wydajności i elastyczności w programowaniu grafiki 3D na różnych platformach, takich jak komputery osobiste, konsole i urządzenia mobilne.

Vulkan został stworzony jako następca OpenGL, mający na celu spełnienie potrzeb bardziej wydajnego i kontrolowanego API w porównaniu z wcześniejszymi rozwiązaniami. Ten interfejs umożliwia programistom bezpośrednią kontrolę nad procesem renderowania grafiki, umożliwiając optymalizację i dostosowanie do specyfikacji danego sprzętu.

Główne cechy Vulkan API

  • Vulkan został zaprojektowany tak, aby minimalizować nakład sterownika, co przekłada się na wyższą wydajność aplikacji graficznych.
  • Wsparcie dla wielowątkowości: Vulkan jest zoptymalizowany pod kątem pracy na wielu wątkach, co umożliwia wydajniejsze i równoległe przetwarzanie grafiki.
  • Równoległe przetwarzanie: Vulkan pozwala na równoczesne przetwarzanie wielu operacji graficznych, co przyspiesza proces renderowania.
  • Niska poziomowość: Vulkan jest niskopoziomowym API, co daje programistom większą kontrolę nad sprzętem i operacjami graficznymi.
  • Wieloplatformowość: Vulkan jest zaprojektowany w taki sposób, aby działać na różnych platformach, w tym na Windows, Linux, Android i innych.
  • Efektywność i wydajność: Dzięki swoim cechom i możliwościom, Vulkan oferuje efektywność i wydajność, szczególnie dla zaawansowanych aplikacji graficznych i gier.
  • Obsługa najnowszych technologii: Vulkan został stworzony z myślą o nowoczesnych rozwiązaniach i jest zgodny z najnowszymi technologiami graficznymi.
  • Kontrola nad sprzętem: Dzięki Vulkanowi programiści mają większą kontrolę nad sprzętem, co pozwala na lepszą optymalizację i dostosowanie aplikacji do różnych urządzeń.

Aby poprawić gry napisane pod starsze wersje Direct3D skorzystamy właśnie z Vulkan’a oraz DXVK.

Czym jest DXVK ?

DXVK działa jako tzw. “wrapper”  i tłumaczy wywołania API DirectX na odpowiednie wywołania API dla bibliotek Vulkan. DXVK pierwotnie został stworzony dla systemu Linux przy wsparciu ze strony Valve, które także używa go w systemie SteamOS oraz w urządzeniu Steam Deck.

Zatem pisząc “po ludzku” DXVK to taki pośrednik pomiędzy osobą głosującą na PiS a osobą bardziej przekonaną do PO. Bez niego po prostu te dwie osoby nigdy by się nie dogadały 😉

Ponieważ Vulkan dorównuje wydajnością Direct3D 12, a oba są znacznie lepsze (i szybsze) niż starsze wersje Direct3D ,  zatem “tłumaczenie” starych gier Direct3D na Vulkan może czasami poprawić wydajność gry. 

Jak użyć DXVK w systemie Windows ?

Użycie DXVK na Windowsie jest bardzo łatwe, wystarczy go pobrać, wypakować do odpowiedniego folderu gry i jest gotowe do działania.

Jednak musimy wiedzieć, czy nasza gra posiada 32 czy 64 bitowy plik wykonywalny. W tym celu najlepiej odwiedzić stronę PCGmingWiki i tam poszukać odpowiednich informacji.

Dla przykładu będziemy “tuningować” grę Max Payne z 2001 roku. 

Na PCGamingWiki dowiedziałem się, że Max ma 32-bitowego *exe:

Bez nazwy 1

I w 90% przypadków większość starych gier będzie również 32 bitowa.

Przechodzimy na główną stronę projektu i pobieramy najnowszą dostępną wersję DXVK.

Teraz wystarczy wypakować odpowiednią wersję (32/x64) DXVK do folderu gry i… właściwie tyle.  Od teraz gra będzie obsługiwać Vulkan’a zamiast starego DirectX’a.

Dziękuję za uwagę.

Czy ten wpis okazał się dla Ciebie przydatny ?

Możesz go ocenić:

Średnia ocena: 4.8 / 5. Głosów: 5

Jeszcze nikt nie zagłosował ! Chcesz być pierwszy ?

Może cię zainteresować:

Jak zablokować aktualizację systemu Windows 10 do Windows 11 ?

Kabson

Najprostsza metoda na sprawdzenie zużycia baterii w laptopie

Kabson

Ukrywamy zbędne elementy w panelu nawigacji eksploratora plików.

Kabson

Kasujemy plik wymiany podczas zamykania systemu

Kabson

Jak usunąć “Dowiedz się więcej o tym zdjęciu” z pulpitu Windows 11

Kabson

Blokujemy update Windows 7/8.1 do Win 10

Kabson

Zostaw komentarz


Obserwuj nasz blog !
Podaj swój adres email, by być informowanym na bieżąco o nowych artykułach pojawiających się na naszej witrynie.