Steam поддръжка
DirectX се инсталира с всяка игра
Защо DirectX се инсталира с всяка игра?

Защо DirectX се инсталира с всяка игра?

Microsoft разполага с помощна библиотека към D3D, която е наречена D3DX. Ще намерите бинарни файлове за това, като например d3dx9_43.dll, в Windows\System32 папката Ви. Има над 40 различни версии на D3DX библиотеките само за D3D9, а редом с това още много за D3D10 и D3D11. Всяка игра, която използва помощната D3DX библиотека, е свързана със специфична нейна версия. Ето защо играта трябва да пусне правилната версия на специфичния D3D инсталатор, за който е компилирана, с цел да се увери, че бинарните файлове съществуват.

Дори ако е инсталирана по-нова версия на бинарните файлове, тя не може да бъде използвана. Дори ако DirectX инсталацията е актуална, защото сте пуснали по-нова версия на инсталатора, това не гарантира, че са инсталирани всички предходни версии. Също така, ако дадена версия е инсталирана за x86, това не гарантира, че същата такава е налична за x64. Тоест, възможно е 64 и 32-битовите игри да пуснат една и съща версия на инсталатора, но при изпълняването му да го насочват към различни платформи.

Лицензионните споразумения на Microsoft възпрепятстват директното разпространение на файловете. Единственият начин да се реализира тяхното разпространение е чрез пускането на инсталатора. Това също е единственият поддържан от Microsoft способ, за да се провери дали е инсталирана правилната версия. Опитът сочи, че ръчната проверка за правилната версия е сложен процес, защото има редица файлове, които трябва да са налице, а индивидуални системни конфигурационни опции като директориите за търсене на dll (динамичните библиотеки) допълнително усложняват ситуацията. В допълнение, зависимостите и изискваните проверки е възможно да се променят във всяка нова версия на D3DX изпълнимата среда. Всичкият код за проверка на правилните инсталации или поправка на повредени такива съществува в самия инсталатор. Изпълняването му гарантира, че правилните бинарни файлове ще съществуват, когато пуснете играта. Същевременно с това предотвратява множество лоши ситуации, при които играта би се пуснала неуспешно с неясна грешка, ако в Windows инсталацията е липсвала правилната версия или тя по някакъв начин е станала повредена преди това.


Защо игрите на Valve, използващи Source двигателя, не пускат DirectX инсталатора?

Игрите, които не използват помощната D3DX библиотека (като например игрите на Source двигателя), нямат нужда от инсталатора при първо пускане, тъй като зависят само от инсталациите на значителните d3d9/10/11 версии. Игрите, които използват D3DX обаче, трябва да го пускат, тъй като това е единственият начин, позволен от Microsoft, за разпространяването и проверката на информация относно файловата версия.


Нуждаете се от помощ със Steam?
Използвайте съветника за помощ на Steam, за да филтрирате темата си и да получите нужната Ви помощ.
Помощ от общността
Публикуване или търсене на отговор на въпроса Ви в Steam дискусиите.