DirectX je součástí operačního systému Windows. Proč se tedy zdá, že každá počítačová hra, kterou si nainstalujete ze služby Steam, Origin nebo jinde, instaluje svou vlastní kopii DirectX?
Co je DirectX?
DirectX je součástí Microsoft Windows. Je to skupina API (aplikační programovací rozhraní), která mohou vývojáři použít pro 3D grafiku, video, multimédia, zvuk a gamepad funkce ve Windows. Mnoho her ve Windows používá pro grafiku DirectX Direct3D. Pokud ne, používají multiplatformní OpenGL nebo sopka Místo toho API. Jiné neherní aplikace mohou používat DirectX pro funkce, jako je 3D grafika.
Windows 7 obsahuje DirectX 11 a Windows 10 zahrnuje DirectX 12 . Když vývojáři vyvíjejí hry, volí verze DirectX, na které se chtějí zaměřit. Například hra napsaná pouze pro DirectX 11 by nefungovala na Windows XP, kde je nejnovější dostupná verze DirectX 9.
PŘÍBUZNÝ: Jak používat diagnostiku DirectX ve Windows
Verzi DirectX dostupnou ve vašem systému můžete zkontrolovat kliknutím na tlačítko Start, zadáním „dxdiag“ do vyhledávacího pole a stisknutím klávesy Enter. Když Diagnostický nástroj DirectX Zobrazí se okno, číslo verze se zobrazí napravo od „Verze DirectX“ v části „Systémové informace“.
Pokud je součástí systému Windows, proč jej hry instalují?
Pokud je tedy DirectX součástí systému Windows, proč si ho hry vůbec instalují? Krátká odpověď je, že instalace DirectX je nepořádek.
Na knihovně nemusí záviset jen jedna hra DirectX Direct3D, nebo dokonce jen hrstka. Vývojáři her musí zacílit na přesnou verzi pomocné knihovny Direct3D. Nelze použít novější verzi knihovny. Pokud například vývojář hry zacílil svou hru na d3ddx10_40.dll, hra nemůže použít d3ddx10_41.dll. Vyžaduje verzi 40 a bude fungovat pouze tento soubor.
Tyto soubory najdete ve vašem systému ve složce C: \ Windows \ System32. Na 64bitový systém , 64bitové knihovny jsou umístěny v C: \ Windows \ System32 a 32bitové knihovny jsou umístěny v C: \ Windows \ SysWOW64.
I když jste spustili nejnovější instalační program DirectX, neexistuje žádná záruka, že se do systému nainstalují všechny staré vedlejší verze knihoven DirectX. Společnost Microsoft se také rozhodla nebalit tyto soubory knihovny Direct3D do samotného systému Windows. Dokonce ani knihovny Direct3D vytvořené před vydáním Windows 10 nejsou všechny součástí Windows 10. Musí být nainstalovány aplikací, která je potřebuje. Jako Microsoft poznámky v dokumentaci určené pro vývojáře her „Windows Update a Service Pack neposkytují žádné z volitelných komponent DirectX“.
Je to ještě komplikovanější. 32bitové hry potřebují 32bitové verze souboru knihovny a 64bitové hry 64bitovou knihovnu.
PŘÍBUZNÝ: Proč je na mém počítači nainstalováno tolik „redistribuovatelných souborů Microsoft Visual C ++“?
Je to podobné jako v případě Redistribuovatelné knihovny Microsoft Visual C ++ . Různé aplikace závisí na různých verzích knihoven a musíte mít nainstalováno mnoho různých verzí. Existuje velká šance, že máte v systému nainstalováno také mnoho z nich.
Proč je ale každá počítačová hra povinna ji znovu nainstalovat?
Dobře, takže každá hra musí instalovat přesnou menší verzi knihoven DirectX, kterou vyžaduje. Pokud jste však již tuto konkrétní verzi knihovny DirectX nainstalovali jednou, ve hře určitě není nutné spouštět instalační program DirectX - je to tak?
Špatně. Hry nemohou nijak snadno zkontrolovat, zda jsou nainstalovány správné knihovny DirectX, které potřebují. Jako web podpory Steam poznámky „Instalační program Microsoft DirectX je jediný oficiálně podporovaný způsob, jak zkontrolovat, zda jsou aktuálně nainstalovány správné soubory DirectX. Hry spouštějí instalační program DirectX, často na pozadí, který nainstaluje všechny požadované knihovny a opraví všechny problémy v systému.
Instalační program DirectX je také jediným způsobem, jak společnost Microsoft umožňuje vývojářům distribuovat tyto soubory. Vývojáři se nemohou pokusit být chytří tím, že ve vašem systému upustí knihovny DirectX přímo a přeskočí instalační program, nebo porušují softwarovou licenci společnosti MIcrosoft. Pravděpodobně by také narazili na různé chyby, i kdyby to zkusili. Proto to nikdo nedělá.
Samozřejmě ne všechny hry musí ve skutečnosti spustit instalační program DirectX, když je poprvé spustíte. Hry, které používají OpenGL nebo Vulkan namísto Direct3D DirectX, jej nebudou muset spouštět. Některé hry také závisí pouze na hlavních verzích DirectX, jako je DirectX 11, 10 nebo 9, a není nutné volat instalační program DirectX, protože nepoužívají žádnou z těchto pomocných knihoven.
Mohu některé z těchto knihoven odebrat?
Ve složce System32 nebo SysWOW64 byste neměli odebírat žádné knihovny DirectX. Pokud se ve vašem systému vyskytují, je to proto, že je potřebovala hra nebo jiná nainstalovaná aplikace. Pokud začnete odstraňovat soubory z knihovny, aplikace se mohou poškodit. Neexistuje způsob, jak skutečně zjistit, které soubory knihovny DirectX jsou vyžadovány, které hry ve vašem systému, takže neexistuje způsob, jak zjistit, které je možné bezpečně odstranit.
Nech je o samotě! Existuje důvod, že neexistuje žádný oficiálně podporovaný způsob odinstalace těchto souborů knihovny. Nezpůsobí ve vašem systému žádné problémy a budou použity pouze aplikacemi, které je vyžadují.
Pokud opravdu zoufale potřebujete vyčistit tyto staré knihovny, bude vám lépe přeinstalování systému Windows získat nový systém namísto náhodného mazání souborů knihovny. Ale stejně se zde začnou znovu objevovat po instalaci her. Nedělejte si s tím starosti.
Co mohu udělat, pokud mám problémy s DirectX?
Pokud se při pokusu o spuštění nebo instalaci hry zobrazí chybová zpráva související s DirectX, je možné, že instalační program hry nespustí správně přiložený instalační program pro opětovné distribuci DirectX. Instalační program DirectX si však nemůžete stáhnout jen z webu společnosti Microsoft - musíte spustit instalační program, který vyžaduje samotná hra.
Možná budete moci přejít do složky hry ve vašem systému nebo na instalační disk hry, vyhledat instalační soubor DIrectX .exe a spustit jej, aby se problém vyřešil. Tento soubor se obecně jmenuje DXSETUP.exe.
Obvykle můžete získat další informace o tom, jak problém vyřešit provedením webového vyhledávání názvu hry nebo aplikace a konkrétní chybové zprávy DirectX, kterou vidíte.