Las librerías DirectX siguen siendo imprescindibles para jugar en PC.
Y no solo por sus características técnicas, sino por el dominio de
Microsoft del escritorio informático. Y es que DirectX ha permitido a
Microsoft monopolizar el juego en PC al incluirlo en los sistemas operativos Windows y también en su ecosistema Xbox.
Hoy te ponemos al día de lo que significa esta interfaz de programación de aplicaciones (API). Unas Librerías
utilizadas para el desarrollo de aplicaciones multimedia y de vídeo,
especialmente videojuegos. Aunque existen otras especificaciones
estandarizadas, más abiertas como OpenGL y su prometedora última versión
Vulkan, el dominio de Windows en PCs ha convertido a DirectX en referencia para juegos en ordenadores personales,
y con ello, en una de las características más evidentes donde Windows
supera a otros escritorios informáticos como OS X y Linux.
¿De dónde viene DirectX?
Como recordarán los usuarios más antiguos antes de Windows 95 los
juegos en PC eran a menudo un calvario tortuoso que implicaba la
utilización del sistema DOS y disquettes de arranque. Con el fin de
proporcionar a los juegos acceso directo al hardware del sistema, primero había que arrancar en DOS y utilizar argumentos especiales en los archivos de configuración config.sys y autoexec.bat.
Microsoft rápidamente se dio cuenta que para convertir el sistema
operativo Windows popular entre los jugadores tenía que dar a los
desarrolladores de juegos una manera para que sus productos tuvieran acceso a los mismos recursos de hardware en Windows, como en DOS.
La primera versión de DirectX fue publicada para Windows 95 y NT 4.0
en junio de 1996. En un primer momento la adopción fue lenta, pero muy
pronto DirectX se hizo fuerte. Algunos críticos estiman que otras
interfaces como OpenGL son más eficientes en aprovechamiento del
hardware, abiertas libres de royalties bajo una API estándar
multiplataforma y en esencia, no controladas por Microsoft y sobre todo,
limitadas a un único sistema operativo, Windows.
Un debate que daría para mucho pero no toca hoy. La realidad es que
la llegada de DirectX cambió para siempre el sector de juegos en PC. Hoy
por hoy, con Windows dominando el 90 por ciento de escritorios
informáticos y usadas en su consola Xbox One, su importancia está lejos
de toda duda.
DirectX 12, última versión
La última versión de estas librerías multimedia fueron estrenadas por Microsoft en 2015 en exclusiva para Windows 10
y Xbox One. Llegó al mercado prometiendo una revolución sobretodo en
rendimiento al incluir una optimización específica para aprovechar mejor
los recursos reales del sistema, especialmente en CPUs con más de
cuatro núcleos de procesamiento y configuraciones multi-GPU.
Su resultado no ha sido el esperado. El apoyo
inicial fue mínimo y aunque la situación ha mejorado últimamente las
ventajas han ido llegando con cuentagotas. No ya por capacidad técnica,
sino por su complejidad para que los desarrolladores extraigan todo su potencial,
las mejoras han sido insignificantes (exceptuando juegos concretos). La
complejidad ha aumentado en las áreas de gestión de memoria, en
multi-GPU y en la tecnología subyacente necesaria para permitir el
cálculo asíncrono. En resumen, DirectX 12 tiene mucho potencial sobre el
papel, pero -hasta ahora- poco resultado práctico.
¿Que versión estoy usando?
Puedes ver fácilmente la versión que está instalada en tu PC con
Windows usando por ejemplo el buscador del sistema o la herramienta
«ejecutar» (botón derecho en el menú de inicio o con las teclas de
acceso rápido «Windows + R»), escribiendo el comando «dxdiag»:
Accederás a la herramienta de diagnóstico de DirectX En
la pestaña «sistema» verás la versión de DirectX instalada. En la
pestaña «pantalla», verás más información, la gráfica que tengas
instalada, la última versión del controlador o parámetros de DX que
deben estar activados como la aceleración de DirectDraw, Direct3D o la
aceleración de texturas. Una nota adicional te informa si hay algún
problema con las APIs.

Aunque esa es la última versión instalada y la que utilizará Windows preferentemente en juegos compatibles, no es nada infrecuente que tengas también otras versiones instaladas.
La explicación es que cada juego depende de una versión diferente de
DirectX. Por ejemplo, si un desarrollador escribió un juego para usar la
actualización 40 de DirectX 11, entonces solo funcionará esa versión y
no una superior. Por tanto, cada vez que instales un
juego nuevo, especialmente más antiguos, es probable que se instale una
nueva versión de las APIs. Las librerías se ubican en C: \ Windows \
System32 o/y en C: \ Windows \ SysWOW64.
Cómo actualizar DirectX?
Antiguamente, DirectX disponía de su propia descarga e instalación
como cualquier ejecutable, pero desde Windows 8, Microsoft ha incluido
las APIs como parte del sistema operativo.
- En Windows 10 funciona de manera exclusiva DirectX
12. directamente desde Windows Update. «Configuración> Actualización
y seguridad> Windows Update > Buscar actualizaciones.
- Windows 8.1 tiene soporte hasta DirectX 11.2. Como en Windows 10, no hay una descarga regular manual y se actualiza de la misma manera.
- En Windows 7, la última versión de DirectX
soportada es 11.1. Está disponible con Windows 7 Service Pack 1 y
específicamente en la actualización Windows Update KB2670838. Se puede
actualizar de forma manual o a través de Windows Update.
- Microsoft también mantiene una página de descargas específica donde se pueden descargar versiones anteriores de las librerías.
Vulkan, la gran alternativa
Vulkan
es una plataforma de última generación para desarrollo de videojuegos y
en general aplicaciones con gráficos 3D. Similar en objetivos al
DirectX de Microsoft (o a otras como el Metal de Apple), proporciona
acceso de bajo nivel permitiendo a los programadores exprimir el
rendimiento del hardware.
Vulkan es el mayor competidor de DirectX 12 y más allá de sus cualidades técnicas, destaca por su soporte multiplataforma
para diversos dispositivos (consolas, ordenadores, tablets, móviles,
embebidos…) y plataformas (Linux, Android, OS X, Steam OS o todas las
versiones de Windows…), lo que es una gran ventaja frente a las últimas
API de Microsoft recordemos exclusivas para Windows 10 (y las consolas
Xbox).
Otra de sus ventajas es que se trata de una API licenciada bajo código abierto
que se puede añadir a prácticamente cualquier plataforma. Los
desarrolladores pueden codificar juegos en Vulkan, siendo fácilmente
portables entre diferentes plataformas.
Tanto NVIDIA como AMD e Intel tienen soporte Vulkan en sus
controladores gráficos de Windows y Linux. También el Steam OS de Valve
dispone de ellos e incluso ha llegado a macOS e iOS a pesar de Apple que por motivos comerciales prefiere impulsar Metal. También importante la apuesta de Samsung por Vulkan como la API gráfica de nueva generación y en general de Google en Android.
A partir de Vulkan 1.1,
se añadió el uso del sombreado HLSL de la API de Microsoft y diseños de
memoria Direct3D de forma nativa. Este soporte les facilitará mover el código Direct3D existente a Vulkan,
ya que ya no necesitan reescribir todos sus programas de sombreado.
Para respaldar este soporte, Khronos ha liberado una nueva versión de
SPIR-V 1.3 para que los programas escritos para OpenCL, se pueden
ejecutar en cualquier GPU que tenga un tiempo de ejecución Vulkan.
Muy interesante este Vulkan. Aún así, para no engañar a nadie, DirectX sigue siendo imprescindible para el desarrollo de juego mundial.
Si sus características podrían ser replicadas, el dominio de Microsoft
del escritorio informático con Windows es incuestionable.
Saludos.