Pomoc techniczna Steam
DirectX instaluje się z każdą grą
Dlaczego DirectX instaluje się z każdą grą?

Czemu DirectX instaluje się z każdą grą?

Firma Microsoft posiada bibliotekę pomocniczą dla D3D o nazwie D3DX. W folderze Windows\System32 można znaleźć jej pliki takie jak d3dx9_43.dll. Istnieje ponad 40 wersji biblioteki D3DX dla samego D3D9 oraz znacznie więcej dla D3D10 i D3D11. Każda gra, która używa biblioteki pomocniczej D3DX, jest łączona z konkretną wersją. Z tego powodu gra musi uruchomić poprawną wersję instalatora D3D, który został specjalnie skompilowany w celu upewnienia się, że dane pliki istnieją.

Nawet jeśli jest już zainstalowana nowsza wersja pliku, nie może ona zostać użyta. Nawet jeśli twoja instalacja DirectX jest aktualna w wyniku uruchomienia nowszej wersji instalatora, nie gwarantuje to posiadania wszystkich poprzednich wersji. Co gorsza, zainstalowanie wersji plików dla architektury x86 nie gwarantuje ich posiadania dla x64, dlatego 64- i 32-bitowe gry mogą wymagać uruchomienia tej samej wersji instalatora, ale właściwej sobie platformy sprzętowej.

Ponadto umowa licencyjna firmy Microsoft zabrania bezpośredniej dystrybucji tych plików – można je rozprowadzać jedynie poprzez uruchomienie instalatora. Jest to także jedyna wspierana metoda weryfikacji wersji plików. Ręczne sprawdzanie wersji plików jest bardzo skomplikowane, ponieważ wymagana jest obecność wielu plików, a indywidualne opcje konfiguracji systemu, np. ścieżki wyszukiwania bibliotek DLL, tylko komplikują sytuację. Dodatkowo zależności i wymagania mogą się zmieniać z każdą nową wersją biblioteki wykonawczej D3DX. Kod sprawdzający poprawne wersje plików i naprawiający uszkodzone instalacje jest już zawarty w instalatorze. Jego uruchomienie gwarantuje istnienie odpowiednich plików podczas uruchamiania gry i zapobiega sytuacjom, w których gra nie uruchamia się z powodu rzadko występującego błędu spowodowanego brakiem poprawnej wersji w instalacji Windows lub jej uszkodzeniem.


Dlaczego gry na silniku Source od Valve nie uruchamiają instalatora DirectX?

Gry, które nie używają bibliotek pomocniczych D3DX (np. gry na silniku Source), nie wymagają uruchamiania instalatora przy pierwszym uruchomieniu gry, ponieważ polegają wyłącznie na głównych plikach D3D9/10/11, które są już zainstalowane. Gry, które korzystają z D3DX, muszą go jednak uruchomić, ponieważ jest to jedyny sposób dystrybucji i sprawdzania wersji plików, na jaki pozwala firma Microsoft.


Potrzebujesz pomocy ze Steam?
Użyj asystenta pomocy Steam, by zawęzić temat i uzyskać potrzebną ci pomoc.
Pomoc w społeczności
Zamieść post w dyskusjach Steam lub przeszukaj je, by znaleźć odpowiedź na twoje pytanie.