Soporte de Steam
DirectX se instala con cada juego
¿Por qué se instala DirectX con cada juego?

¿Por qué se instala DirectX con cada juego?

Microsoft tiene una biblioteca auxiliar con D3D llamada D3DX. Encontrarás los binarios para esto (como d3dx9_43.dll) en la carpeta Windows\system32. Existen más de 40 versiones diferentes de la biblioteca D3DX solo para D3D9, y muchas más para D3D10 y 11. Cada juego que utiliza la biblioteca auxiliar D3DX está vinculado a una versión específica. Por lo tanto el juego debe ejecutar la versión correcta del instalador de D3D con el que fue compilado específicamente para asegurarse de que los binarios existen.

Incluso si una versión posterior del binario ya está instalada, dicha versión no puede utilizarse, y lo mismo ocurre si tu instalación de DirectX está actualizada debido a que has ejecutado una versión más reciente del instalador en la que no se garantiza que se hayan instalado todas las versiones anteriores. Es más, si se ha instalado una versión para x86 esto no garantiza que se haya instalado la misma para x64, por lo tanto los juegos de 64 y 32 bits deberán ejecutar la misma versión del instalador, pero apuntando a diferentes plataformas al ejecutarse.

Por otra parte, los términos de licencia de Microsoft impiden que se distribuyan los archivos directamente, haciendo que la única forma de distribuirlos sea ejecutando el instalador, además de ser el único método de Microsoft soportado para comprobar que la versión correcta está instalada. Intentar comprobarlo manualmente es extremadamente complicado debido a que existen numerosos archivos que deben estar presentes y opciones de configuración individuales del sistema (como rutas de búsqueda de archivos dll) que dificultan la situación. Además, las dependencias y comprobaciones requeridas pueden cambiar en cada nueva versión del runtime de D3DX. El código para comprobar y reparar correctamente instalaciones fallidas está todo en el instalador, y ejecutarlo es una garantía de que existirán los binarios correctos cuando ejecutes el juego además de evitar un montón de malos casos en los que un juego podría dar un error desconocido al iniciarse debido a la falta de una versión correcta o a que de alguna forma se dañó en el pasado.


¿Por qué los juegos con el motor Source de Valve no ejecutan el instalador de DirectX?

Los juegos que no utilizan las bibliotecas auxiliares D3DX (como los juegos con el motor Source) no requieren ejecutar el instalador la primera vez porque solo precisan de versiones importantes de d3d9/10/11 que a menudo ya están instaladas. Sin embargo, los juegos que utilizan D3DX deben ejecutarlo, ya que es la única forma que ha permitido Microsoft para distribuir y comprobar la información de la versión en los archivos.


¿Necesitas ayuda con Steam?
Utiliza el asistente de ayuda de Steam para delimitar tu tema y obtener la ayuda que necesitas.
Ayuda de la comunidad
Publica tu pregunta o busca una respuesta en las discusiones de Steam.