Una de las funciones más recientemente agregadas a las tarjetas de video es el soporte para la tecnología HDR. Pero… ¿Qué significa? ¿Qué beneficios aporta a la calidad visual? Las respuestas a estas preguntas y mucho más, en el siguiente informe.Un dicho común en la industria señala que la programación de software siempre se vio limitada por la potencia del hardware encargado de ejecutarlo. Vale la pena citar esta frase, ya que fue Paul Debevec quien, en 1998, introdujo los conceptos que terminarían siendo la base de lo que hoy conocemos como HDR. Lógicamente, en esa época no podía ser implementado en tiempo real, pero gracias a la potencia de los chips gráficos de última generación, esto es posible hoy en día.
Aunque es una tecnología que aún está “en pañales” (por lo menos, en el ámbito de los videojuegos), no cabe duda que constituye un avance muy significativo en cuanto a la calidad visual de una escena tridimensional. Así como los shaders permitieron a los programadores una gran libertad a la hora de programar efectos gráficos, el HDR ofrece algo similar pero más relacionado al manejo de la iluminación, posibilitando incrementar notablemente el nivel de realismo en pantalla.
Como bien marca el título, es la sigla que corresponde a High Dynamic Range; en castellano, Rango Dinámico Amplio. En nuestro caso, hablaremos de este concepto aplicado al proceso de renderizado de un entorno tridimensional, lo que se conoce como HDR Rendering (HDRR), pero manteniendo la denominación original.
Partiendo desde la base, el rango al cual hacemos referencia es el comprendido entre el valor de iluminación más pequeño (0: negro) y el más alto (1: blanco). Hasta antes de la aplicación del HDR, este rango era fijo e inquebrantable. Esto proporcionaba escenas que, aún aplicando un conjunto de texturas fotorrealistas, no conseguían un nivel de realismo destacable. Por ello, era necesario recurrir a técnicas como el blooming y el enhanced contrast. El primero esparce el efecto de iluminación de una fuente de luz a sus alrededores. Se utilizó mucho en F.E.A.R., por citar un ejemplo. En tanto que, el segundo, lo pudimos apreciar en juegos como Need for Speed: Most Wanted. El mismo mejora sustancialmente la aplicación del contraste cuando es activado, observándose mucho más definido en la imagen.
El concepto de HDR fue introducido para sobrepasar las barreras impuestas por el rango fijo antes aludido. Básicamente, la idea es simple: “Lo blanco puede ser más blanco, y lo negro puede ser más negro”. Pero no fue hasta la aparición de la segunda versión de los shaders (Shader Model 2.0) que se habilitó lo necesario para que se pudiera experimentar con HDR en una escena 3D. El cambio más importante en los shaders 2.0 fue la ampliación de la cantidad de bits destinada a establecer la precisión de la iluminación en pantalla. Los 8 bits iniciales pasaron a ser, como máximo, un total de 24. Estos valores mejoraron con la salida del Shader Model 3.0, que elevó esa misma cantidad hasta 32 bits, cambiando, además, el tipo de dato de entero a flotante (para mejorar aún más la precisión).
Con el soporte disponible, tanto en el software de desarrollo como en el hardware de aplicación, el HDR empezó a ser una realidad.
Con lo dicho hasta el momento, podemos resumir que el HDR es un conjunto de técnicas que los desarrolladores pueden adoptar al momento de controlar la iluminación dinámicamente en un entorno en tres dimensiones. Todos los procesadores gráficos compatibles con Shader Model 2.0 y 3.0 pueden manejar, en mayor o menor medida, estas técnicas. Debido a las limitaciones de potencial de algunos de ellos, no en todos los casos es posible activar el HDR y el Alisado a Pantalla Completa (en inglés FSAA, Full Screen Anti-Aliasing) al mismo tiempo, ya que el impacto en el rendimiento sería demasiado pronunciado. De las disponibles en la actualidad, tanto la familia GeForce 7 como las placas de video basadas en el R580 de ATI pueden operar en esta situación, salvo algunas excepciones como las GeForce 7600 GS y 7600 GT.
Pero sigue habiendo un aspecto que no permite representar en pantalla el rango de iluminación establecido por el HDR: el dispositivo proyector. Monitores, televisores de alta definición y similares no son capaces de mostrar el nivel real de contraste de luz y oscuridad que percibe el iris del ojo en la realidad. Es por esto que se aplica la función conocida como tone mapping, la misma que se encarga adaptar las posibilidades del HDR a las capacidades reales de estos dispositivos, logrando resultados que, si bien no son los ideales, se acercan bastante a lo que sucede realmente con el ojo humano.
Recién mencionábamos el tone mapping como una función primordial dentro del conjunto de efectos que sigue la norma del HDR. Para explicarlo, vamos a recurrir a una situación que comúnmente les sucede a todos los asiduos usuarios del ordenador. Estando en una habitación a oscuras, iluminada solamente con la luz proveniente del monitor, miramos por la ventana hacia fuera y vemos la luz sumamente brillante de un día soleado. Al salir al aire libre, notamos como esa misma luz no es, en realidad, tan intensa como se veía desde la habitación (excepto al principio, durante el proceso de adaptación del iris del ojo). Al permanecer un rato bajo estas condiciones, decidimos volver al cuarto donde se halla la el ordenador a oscuras. Apenas entramos, difícilmente distingamos algo más que la pantalla del monitor, pero luego de un rato, el iris vuelve a acostumbrarse a este grado de iluminación y comenzamos a percibir más detalles en el entorno sombrío. Este proceso, el mismo que realiza el iris en las transiciones oscuridad-luz y luz-oscuridad, es el llevado a cabo por el tone mapping en los escenarios tridimensionales, según los cambios de perspectiva adoptados. En pocas palabras, ajusta la visibilidad de acuerdo a la exposición de la luz ambiente en un lugar dado.
Claro que el HDR no es sólo tone mapping. Blooming, un efecto que también se puede emular sin HDR, es el que habitualmente observamos cuando un sector está iluminado tan intensamente que desborda sus límites geométricos naturales. Por ejemplo, si una luz muy potente proviene de la abertura de una puerta, puede verse claramente como el espectro de iluminación excede el perímetro de la misma. Para que sea posible, se coloca un valor de brillo que supera el radio de contraste que el dispositivo proyectante -como el monitor- puede brindar. El resultado es un blanco tan brillante que molesta a los ojos al mirarlo fijamente.
Además de estos dos (que son, fundamentalmente, los más importantes), la compañía Valve implementó, en su demo tecnológica conocida como Half Life 2: Lost Coast, otros efectos muy interesantes. Entre ellos, el SkyBox realiza algo similar al tone mapping pero tomando como referencia el cielo. Esto significa que el grado de iluminación ambiental varía según el sol esté al descubierto, con nubes livianas sobrevolando levemente o con terribles nubarrones negras tapándolo. Tal como sucede en la vida real. También del repertorio de Valve es el efecto Refraction. Éste se apoya en el concepto que afirma que la luz que se refracta sobre un determinado tipo de material, adopta ciertas propiedades del mismo. Este es el caso de la luz que entra por la ventana, en la cual notamos como los rayos se observan del mismo color que el vidrio que la compone. Por último (aunque existen varios más) está el denominado Water Reflection. Como su título lo indica, aplica el efecto de blooming en las reflexiones de fuentes de luz sobre el agua, mejorando notablemente el nivel de saturación del reflejo.
La explotación de las posibilidades que propone el HDR depende mucho de cada compañía. Valve parece ser la primera en demostrar cuan lejos se puede llegar con una buena aplicación de esta tecnología. Sólo hace falta ver en movimiento a Lost Coast o a Half Life 2: Episode One (del cual pueden observar más imágenes en la sección de Juegos) para darse cuenta de ello. Hasta el momento, el efecto más utilizado en la industria es el de blooming. Si la ganancia visual al aplicarlo es radical, imagínense lo que será dentro de poco tiempo, cuando se implementen varios de estos efectos a la vez.
En este aspecto hay que hacer una gran diferencia. Por un lado tenemos aquellos juegos que utilizan HDR mediante Shader Model 2.0. En tanto que, los más avanzados y los que se vienen en el futuro, lo hacen a través de Shader Model 3.0. Los resultados de cada implementación depende exclusivamente de los programadores, pero en todos los casos la diferencia gráfica es más que apreciable. La penalización en el rendimiento, también.
Veamos el listado con los títulos más conocidos de ambos grupos, divididos por la versión de shaders compatible:
Shader Model 2.0
· Half Life 2: Episode One
· Counter-Strike: Source
· Day of Defeat: Source
· Call of Duty 2
· Brothers in Arms
Shader Model 3.0
· Age of Empires III
· Serious Sam II
· The Elder Scrolls IV: Oblivion
· Splinter Cell: Chaos Theory
· Ghost Recon: Advanced Warfighter
· Tomb Raider: Legend
· Far Cry (aplicando el parche 1.3)
Shader Model 3.0 (aún por salir)
· BioShock
· Unreal Tournament 2007
· TimeShift
· Splinter Cell: Double Agent
· Crysis
excelente explicacion !!! me resolvio muchas dudas q lei en este tutorial http://www.hdritutorial.com/hdrtutorial/que-es-hdri-y-ldri/