Direct3D11 vs Direct3D9

Esto va a ser un artículo cortito. Con la salida del nuevo ratón Logitech G600 con 12 botones contorneados en el pulgar más botón shift para funciones secundarias en cada botón, me dio por mirar la página de Blizzard del World of Warcraft, sus cuotas mensuales, algo de información en la Wikipedia, etc.
También me acordé de que Blizzard añadió soporte Direct3D11 (y el resto de bibliotecas pertenecientes a DirectX11) a dicho juego.



Leyendo simplemente la Wikipedia (preferiblemente la inglesa) uno puede enterarse de que en D3D11 se añadieron muchas mejoras enfocadas a mejorar el rendimiento. La teselación aunque es algo que impacta visualmente y hace disminuir el rendimiento, es sólo una novedad de las muchas añadidas a D3D11. Cosas como rendering multi hilo (varios procesadores pueden enviar comandos de forma simultánea para renderizar múltiples objetos a la vez, o repartir el trabajo de renderizado de un objeto entre varios hilos, y por tanto entre varios procesadores si hay más de uno), mejor compresión de texturas, caché te texturas (manejo de memoria), etc. van enfocados a mejorar el rendimiento.

Pues bien, Tom's Hardware hizo un análisis del parche DirectX11 que fue añadido al World of Warcraft hace ya bastante tiempo, en el cual se veía claramente cómo el rendimiento mejoraba con respecto al mismo juego funcionando sobre DirectX9.

Eso sí, cuanto más potente es el hardware, más se aprecia la diferencia de rendimiento por lo que si dispones de un equipo normalito las diferencias no serán tan grandes. El análisis se hizo concretamente con una NVIDIA GTX 580 y daba una mejora de un 20% en media, según resoluciones y demás.

Desgraciadamente DirectX11 no está siendo muy ampliamente usado en los ordenadores debido a que la mayoría de juegos son escritos primero para las consolas y luego adaptados al PC. Dado que las consolas siguen ancladas en hardware DirectX9, lo que llega a ordenador son juegos DirectX9 en su mayoría, y cuando se utiliza DirectX11 es para añadir más carga visual que anula las mejoras en rendimiento. Muchas veces además esa carga visual está mal empleada, supongo que como fruto de la experimentación y ser algo poco extendido.

De hecho mejoras en rendimiento ya las noté incluso con DirectX10 en algunos juegos (Crysis, BioShock).


Comentarios