Translate

domingo, 21 de septiembre de 2014

Microsoft anuncia su DirectX 11.3

Nuevo API gráfico llevará algunas de las nuevas características de DirectX 12 a sistemas operativos anteriores a Windows 9.

A 6 meses del anuncio de su API gráfico de bajo nivel DirectX 12, Microsoft anuncia su también nuevo API gráfico DirectX 11.3, API que será lanzado a fines del próximo año, simultáneamente con DirectX 12 y el nuevo sistema operativo Windows 9.
DirectX 11.3 contará con algunos de los nuevos efectos gráficos presentes en su hermano mayor DirectX 12 (en concreto, tan sólo 4 de ellos), pero, carecerá de la capa de abstracción de bajo nivel que ofrece los significativos incrementos al rendimiento gráfico y menor dependencia mono-hilo de DirectX 12.
Entre los nuevos efectos gráficos que incorporará DirectX 11.3 tenemos:

Rasterizer Ordered Views (ROV)

Nueva tecnología que ofrece a los desarrolladores un total control del orden en que los elementos se rasterizan en un escenario 3D, permitiendo afinar la representación gráfica gracias al “dibujo de elementos gráficos en el orden correcto”; permitiendo aplicar efectos como transparencia y humo de forma más realista.
Rasterizer Ordered Views (ROV) ofrece una alternativa de mayor calidad gráfica a Unordered Access Views (UAV), ofreciendo un modo de renderizado específico para ciertas escenas que requieran el rasterizar objetos de forma ordenada para su correcta representación, dejando a UVA para escenas que no requieran de que sus elementos sean renderizados con un ordenamiento en especial (UAV ofrece obviamente un mayor rendimiento gráfico, pero menor calidad en ciertos escenarios donde ROV muestra sus ventajas).
Typed UAV Load
Tecnología diseñada para trabajar en conjunto con Unordered Access Views (UAV) y Rasterized Ordered Views (ROV). Typed Unordered Access Views Load (Typed UAV Load) consiste en una unidad dedicada al cálculo de complejas operaciones UAV de lectura/escritura/modificación/mezcla, ofreciendo un rendimiento y calidad de representación superior al de UAV.
Volume Tiled Resources (VTR)
Tecnología dedicada al manejo de pixels volumétricos (voxels), dividiendo las texturas 3D en múltiples fragmentos 3D/voxels, los que requieren de mucho menor capacidad de cálculo y de ancho de banda para el procesamiento de los efectos gráficos de iluminación/reflejos aplicados a ellos; a la vez que orecen una representación más realista.
Microsoft afirma que Volume Tiled Resources requiere de menos del 10% de la memoria gráfica (VRAM) requerida en el procesamiento gráfico tradicional (aplicar los efectos a la escena completa sin dividirla en voxels). Por ejemplo una mega-textura de 1200x600x600 con color de 32 bits requiere de 1.6GB de memoria gráfica, mientras que la misma textura dividida en cerca de 2500 voxels, requiere de tan sólo 156MB.

Este importante ahorro de recursos se consigue, aplicando efectos gráficos únicamente a los voxels concernientes, en vez de a la textura 3D completa.
Conservative Rasterization (CR)
Unidad dedicada al cálculo acelerado y preciso de la detección/identificación de pixels cubiertos total o parcialmente por los polígonos, consiguiendo una representación visual de mayor precisión que a la vez ahorra recursos, al evitar procesar los pixels cubiertos por un polígono ubicado en un nivel superior de la escena 3D.
Conservative Rasterization se vale de complejos algoritmos para detectar el tamaño de los polígonos, para en base a ello, predecir si el polígono cubrirá total o parcialmente un área de pixels, evitando las tareas innecesarias al renderizar pixels que no se mostraran en la escena, por estar “debajo” de otros polígonos en primer plano (rasterización conservadora).

Otras características de DirectX 11.3

Obviamente, estas 4 nuevas características gráficas no serán las únicas novedades que ofrecerá DirectX 11.3, Microsoft planea revelar algunas más en los próximos meses; por lo que de momento no existe ningún GPU con soporte por hardware a este API (ni siquiera los recientemente lanzadosMaxwell de segunda generación de Nvidia, los que tan sólo soportan Conservative Raster y Raster Ordered Views, pero no las otras 2 características).
El propósito de DirectX 11.3
Si ya Microsoft anunció DirectX 12, el cual además de contar con los nuevos efectos que estrena DirectX 11.3 (cada nueva versión de DirectX es incremental, es decir, cuenta con las características de sus antecesores) ¿Cuál es el propósito de DirectX 11.3?
La respuesta a la anterior pregunta probablemente sea, el mantener vigente la simplicidad de los API gráficos de alto nivel tradicionales, facilitándoles a los desarrolladores (sobre-todo a los desarrolladores pequeños y/o independientes) la elaboración de sus nuevos títulos (juegos) y motores gráficos.
APIs de bajo nivel como DirectX 12, suponen un mayor costo en tiempo de desarrollo y en la contratación de programadores especializados, factores que podrían limitar el uso de APIs de bajo nivel a los mayores desarrolladores de juegos y de motores gráficos de la industria, aunque esto podría incluir también a los desarrolladores de juegos que licencien un motor gráfico optimizado para APIs gráficas de bajo nivel.
DirectX 11.3 aún será usado por una gran cantidad de títulos que saldrán en los próximos años, los que no necesitarían de la escalabilidad hacia múltiples núcleos (multi-procesamiento paralelo) ni la reducción a la sobrecarga del controlador gráfico (menos de 15000 comandos gráficos simultáneos) con la que cuenta DirectX 12.

GPUs compatibles con DirectX 11.3

Dado que DirectX 11.3 exige los mismos requisitos de hardware que DirectX 12, podríamos afirmar que actualmente no existe ningún GPU 100% compatible por hardware con DirectX 11.3, siendo el único GPU con soporte parcial, el recientemente lanzado Nvidia GM204, basado en la arquitectura gráfica Maxwell de segunda generación.
Retro-compatibilidad de DirectX 11.3
Al igual que cada nueva versión del API gráfico DirectX, el nuevo DirectX 11.3 será retro-compatible con GPUs de generación anterior, gracias a su característica Feature Level (también conocida como Hardware Level), la que permite emular por software, muchos de sus nuevos efectos gráficos, en GPUs sin soporte expreso para ellos (aunque con el obvio rendimiento inferior que el de un GPU DirectX 11.3 nativo).
DirectX 11.3 contará con los siguientes Feature Levels:
  • Feature Level_1 (GPUs compatibles con el API DirectX 11 y 11.1).
  • Feature Level_2 (GPUs compatibles con el API DirectX 11.2).
  • Feature Level_3 (GPUs compatibles con el API DirectX 11.3/12).
El futuro de los API gráficos DirectX de alto nivel
Al parecer Microsoft no planea abandonar el desarrollo de DirectX 11.x, API de alto nivel que continuará su proceso evolutivo, paralelamente al proceso evolutivo y desarrollo del API de bajo nivel DirectX 12, es decir, en un futuro cuando Microsoft lance un hipotético DirectX 12.1, paralelamente a él también lanzará un hipotético DirectX 11.4.
DirectX y su soporte en Windows
El que Microsoft mantenga el desarrollo y evolución paralela de su API gráfico DirectX, en sus versiones de alto nivel (DirectX 11.x) y de bajo nivel (DirectX 12.x), deja algunas dudas sobre una posible discriminación hacia sus viejos sistemas operativos. Es decir, podría ocurrir que DirectX 12 sea lanzado en exclusiva para Windows 9 (quizá también para Windows 8.1), pero no para sistemas operativos anteriores como Windows 7, los que se quedarían limitados a DirectX 11.x.
Conclusiones
Podríamos denominar a DirectX 11.3, el homólogo sin capa de abstracción de bajo nivel de DirectX 12, el que mantendrá el simplificado modelo de programación que ha hecho tan popular a DirectX durante todos estos años (desde septiembre de 1995 cuando fue lanzado DirectX 1.0), ofrciendo a los desarrolladores las mismas herramientas simplificadas y los ahorros de costos y tiempo de desarrollo.
DirectX 11.3 (y sus sucesores) también se podría convertir en el caballo de batalla que les dé algunos años de vigencia adicionales a viejos sistemas operativos como Windows 7, los que posiblemente no sean capaces de soportar las nuevas características de DirectX 12.
En fin, este anuncio no sorprende demasiado, pues de cierta forma, DirectX 11.3 ofrece a los desarrolladores, la simplicidad a la que están acostumbrados; al usuario, gozar de los nuevos efectos gráficos de DirectX 12, en nuevos títulos que no requieran la capa de abstracción de bajo nivel de este último, algo que el propio DirectX 12 no sería capaz de ofrecer.

No hay comentarios.:

Publicar un comentario