Microsoft ha iniciado sus explicaciones sobre lo que tienen planeado para DirectX 12. Y lo primero que hay que decir es que DirectX es una colección de diferentes API para multimedia. Sin embargo, Microsoft parece que solo quiere hablar de Direct3D, lo cual en muchos sentidos no es la mejor idea, porque tendremos que esperar entonces para ver cómo se desarrollan las otras tecnologías de DirectX y ver cómo las haremos compatibles con lo anterior.
Con respecto a Direct3D, es difícil decir porque hay mucha especulación mediática al respecto. Lo que está claro es que: «será más rápido y eficiente como nunca antes» y permitirá «más objetos, escenas enriquecidas» y además usando «el hardware moderno de los GPUs», es decir, dirán lo que siempre se dice cuando se presenta la siguiente versión de alguna tecnología, incluso de otros fabricantes.
La siguiente gráfica, sin embargo, puede dar más luz lo que se espera de Direct3D:
Como puede verse, DirectX 12 hace un mejor balance entre la carga de trabajo entre los hilos de ejecución (threads) y termina primero. No está sin embargo muy claro que pueda decirse que «da una abstracción de bajo nivel del hardware como nunca antes, permitiendo a los juegos mejorar el escalamiento de múltiples hilos así como la utilización del CPU».
Esto nos hace preguntarnos, ¿cuánto trabajo hay que hacer ahora para que nuestros programas corran más rápido? ¿Qué tan complicado es balancear recursos manualmente, así como el uso de los hilos para tener un desempeño mejor? Vamos, que no está muy claro para el programador cómo va a sacar ventaja de estas características en esta nueva versión de DirectX.
También se dice que: «Direct3D introduce un conjunto de nuevas características para proceso de rendering que mejorará dramáticamente la eficiencia de los algoritmos tales como la detección de colisiones, entre otros».
Pues sí, de nuevo se espera este tipo de mejoras, pero no se siente que haya algún cambio radical para el programador promedio de DirectX.
Los cambios que se describen son de muy bajo nivel e involucran trabajar con GPUs y con el código de bajo nivel que los alimenta. Algunos han comparando estas nuevas características con lo que las gráficas de AMD Mantle pueden hacer, pero esto en general converge en mejores maneras de hacer programación, siempre y cuando se tengan ya sistemas que trabajan de esta manera. En el caso de Direct3D no parece estar muy claro.
Hay una nueva lista de comandos pero que no tienen ninguna característica de herencia. Esto hace posible para el sistema pre-calcular todo antes de enviarlo al GPU- Esta idea suena sin duda muy interesante y desde luego, tiende a mejorar el desempeño de los sistemas.
Todos estos cambios, sin embargo, solamente se usarán por programadores de DirectX que quieren involucrarse personalmente con las GPUs y con la dsponibilidad y espacio para los recursos. En otras palabras, esto suena emocionante para los programadores más sofisticados pero muchos programadores de DirectX no llegan a esos niveles.
La pregunta es pues ¿qué tan completa es esta versión de DirectX? Microsoft dice que la versión esta en modo alpha pero ya tenemos algunas demos, como la de forza Motorsport 5. Aparentemente DirectX 12 no tendrá mucho impacto por lo menos este año, pero en cualquier caso ya la versión alpha parece ser bastante usable.
Se dice que el 80% de las nuevas máquinas que se venden hoy día serán capaces de usar Directx 12, específicamente con soporte a los GPUs HD7000, NVIDIA Fermi, Kepler y Maxwell. Microdsoftr dice que DirectX será soportada por todas las plataformas: XBox, Windows RT, Windows y Phone. Sin embargo, no dicen si todas las características se soportarán por igual.
Todos sabemos que Microsoft está poniendo todos sus empeños en Windows 8. ¿Funcionará DirectX 12 en Windows 7? Por lo que nos cuenta la historia pasada de la empresa, en general las nuevas tecnologías se restringen a los nuevos sistemas, lo cual es una manera de justificar el actualizar nuestras máquinas, o mejor dicho, obligar a los usuarios a actualizar sus equipos.
Así entonces, no hay muchas novedades en DirectX 12 para el programador promedio. Habrá aún que esperar a los anuncios oficiales de la empresa de las venganas, ahora que tiene renovado CEO.
Referencias: