Radiance es un conjunto de herramientas para realizar simulación de iluminación originalmente escrito por Greg Ward. [1] Incluye un renderizador y muchas otras herramientas para medir los niveles de luz simulados. Utiliza el trazado de rayos para realizar todos los cálculos de iluminación, acelerado por el uso de una estructura de datos de octárbol . Fue pionero en el concepto de imágenes de alto rango dinámico , donde los niveles de luz son (teóricamente) valores abiertos en lugar de una proporción decimal de un máximo (por ejemplo, 0.0 a 1.0) o una fracción entera de un máximo (0 a 255/255). . También implementa iluminación global utilizando el método Monte Carlo. para probar la luz que cae sobre un punto.
Desarrollador (es) | Greg Ward |
---|---|
Versión inicial | 1985 |
Lanzamiento estable | 5.3 (03-09-2020) [±] |
Versión de vista previa | No [±] |
Escrito en | C |
Sistema operativo | Unix , Linux , OS X , Windows |
Licencia | Código abierto específico del proyecto |
Sitio web | http://www.radiance-online.org |
Greg Ward comenzó a desarrollar Radiance en 1985 mientras trabajaba en el Laboratorio Nacional Lawrence Berkeley . El código fuente se distribuyó bajo una licencia que prohibía una mayor redistribución. En enero de 2002, Radiance 3.4 se volvió a otorgar bajo una licencia menos restrictiva.
Un estudio encontró que Radiance es el paquete de software más útil para la simulación de iluminación arquitectónica. El estudio también señaló que Radiance a menudo sirve como motor de simulación subyacente para muchos otros paquetes. [2]
Formato de imagen HDR
Radiance definió un formato de imagen para almacenar imágenes HDR, ahora descrito como formato de imagen RGBE . Dado que fue el primer (y durante mucho tiempo el único) formato de imagen HDR, este formato es compatible con muchos otros [ ¿cuál? ] paquetes de software. [ cita requerida ]
El archivo comienza con la firma '#? RADIANCE' y luego varias líneas que enumeran los comandos utilizados para generar la imagen. Esta información permite que el renderizador rpict continúe con un renderizado parcialmente completado (ya sea manualmente o usando el front-end rad ). También hay declaraciones clave = valor , incluida la línea 'FORMAT = 32-bit_rle_rgbe'.
Después de esto, hay una línea en blanco que indica el final del encabezado. Una sola línea describe la resolución y el orden de los píxeles. Como lo producen las herramientas Radiance, esto siempre toma la forma de '-Y alto + X ancho' . Después de esta línea siguen los datos de píxeles binarios.
Radiance calcula los valores de luz como tripletes de punto flotante , uno para el rojo, el verde y el azul. Pero almacenar un flotador de precisión doble completo para cada canal (8 bytes × 3 = 24 bytes) es una carga incluso para los sistemas modernos. Se utilizan dos etapas para comprimir los datos de la imagen. El primero escala los tres valores de coma flotante para compartir un exponente común de 8 bits , tomado del más brillante de los tres. Luego, cada valor se trunca en una mantisa de 8 bits (parte fraccionaria). El resultado son cuatro bytes, 32 bits, para cada píxel. Esto da como resultado una compresión de 6: 1, a expensas de una menor fidelidad del color.
La segunda etapa realiza la codificación de la longitud de ejecución en los valores de píxeles de 32 bits. Esto tiene un impacto limitado en el tamaño de la mayoría de las imágenes renderizadas, pero es rápido y sencillo.
Extensión de nombre de archivo | .pic, .hdr, .rgbe, .xyze |
---|---|
Tipo de medio de Internet | image / vnd.radiance |
Desarrollado por | Randolph Fritz, Greg Ward |
Versión inicial | 4 de marzo de 2009 |
Tipo de formato | Formatos de archivo de imagen |
Estándar | http://radsite.lbl.gov/radiance/refer/filefmts.pdf |
¿ Formato abierto ? | fuente abierta |
Sitio web | http://radsite.lbl.gov/radiance/ |
Formato de descripción de escena
Una escena de resplandor se crea a partir de uno o más archivos de objetos. El formato .rad es un archivo de texto simple. Puede especificar objetos geométricos individuales, así como llamar a programas, comenzando una línea con un signo de exclamación '!'. [3]
Al especificar geometría, la primera línea es
nombre del tipo de modificador
Las siguientes tres líneas contienen parámetros que comienzan con un número entero que especifica el número de parámetros. No es necesario que los parámetros estén en la misma línea, se pueden continuar en varias líneas para ayudar en la legibilidad.
Los modificadores crean materiales y se pueden encadenar, uno modificando al siguiente.
Por ejemplo:
myball.rad
bola esfera cromada004 0 0 10 10
Esto luego se puede ordenar en otro archivo usando el programa xform (descrito más adelante):
scene.rad
vacío metal cromado005 0,8 0,8 0,8 0,9 0,0! xform -a 5 -t 20 0 0 myball.rad
Esto crea un material de cromo y cinco esferas de cromo espaciadas 20 unidades a lo largo del eje X.
Antes de que se pueda usar una escena, debe compilarse en un archivo de octárbol ('.oct') usando la herramienta oconv . La mayoría de las herramientas de renderizado (ver más abajo) utilizan un archivo de octárbol como entrada.
Herramientas
La suite Radiance incluye más de 50 herramientas. Fueron diseñados para su uso en sistemas Unix y similares a Unix. Muchas de las herramientas actúan como filtros, tomando la entrada en la entrada estándar y enviando el resultado procesado a la salida estándar . Estos pueden usarse en la línea de comandos de Unix y canalizarse a un nuevo archivo, o incluirse en los propios archivos de escena Radiance ('.rad'), como se muestra arriba.
Manipulación de geometría
Varios programas de radiance manipulan los datos de la escena Radiance leyendo desde un archivo específico o su entrada estándar y escribiendo en la salida estándar.
- xform permite realizar un número arbitrario de transformaciones en un archivo '.rad'. Las transformaciones incluyen traslación, rotación (alrededor de cualquiera de los tres ejes) y escalado. También puede realizar arreglos multidimensionales.
- replmarks reemplaza ciertos triángulos en una escena con objetos de otro archivo. Se utiliza para simplificar una escena al modelar en un modelador 3D.
Generadores
Los generadores simplifican la tarea de modelar una escena, crean ciertos tipos de geometría a partir de los parámetros proporcionados.
- genbox crea una caja.
- genrprism extruye un polígono 2D dado a lo largo del eje Z.
- genrev crea una superficie de revolución a partir de una función dada.
- genworm crea un gusano dadas cuatro funciones: las coordenadas (x, y, z) de la ruta y el radio del gusano.
- gensurf crea una superficie teselada a partir de una función determinada.
- gensky crea una descripción para una distribución de cielo estándar CIE .
Convertidores de geometría
Radiance incluye varios programas para convertir la geometría de la escena de otros formatos. Éstas incluyen:
- nff2rad convierte objetos NFF a geometría Radiance.
- obj2rad convierte archivos .obj de Wavefront a geometría Radiance.
- obj2mesh convierte archivos .obj de Wavefront en una malla compilada de Radiance . Esto luego se puede incluir en una escena utilizando la primitiva de malla recientemente agregada . Más eficiente que usar obj2rad e incluye coordenadas de textura.
Representación
- rpict es el renderizador, produciendo una imagen Radiance en su salida estándar.
- rvu es un renderizador interactivo que abre una ventana X11 para mostrar el renderizado en curso y permite modificar la vista.
- rtrace es una herramienta para rastrear rayos específicos en una escena. Lee los parámetros de estos rayos en su entrada estándar y devuelve el valor de luz en la salida estándar. rtrace es usado por otras herramientas, e incluso puede usarse para renderizar imágenes por sí solo usando el programa vwray para generar rayos de vista que se enviarán a él.
- dayfact es un script interactivo para calcular valores de luminancia y factores de luz diurna en una cuadrícula.
- findglare toma una imagen o escena y encuentra fuentes brillantes que causarían un deslumbramiento incómodo en los ojos humanos.
- mkillum toma una superficie (por ejemplo, una ventana o una pantalla de lámpara) y calcula la contribución de iluminación que la atraviesa. Estos datos son utilizados entonces por el Illum modificador de material para hacer la iluminación de estas fuentes secundarias más precisos y eficientes para calcular.
Manipulación y análisis de imágenes
- pfilt filtra una imagen. La técnica común para lograr imágenes suavizadas es renderizar varias veces más grande que el tamaño deseado y luego filtrar la imagen usando pfilt .
- pcompos compone imágenes, ya sea con coordenadas de anclaje o agregando varias imágenes encima de otra.
- imágenes de condiciones pcond . Puede simular una serie de efectos de la respuesta visual humana, por ejemplo, desenfoque de áreas oscuras, velo debido al deslumbramiento y pérdida de color debido a la visión mesópica o escotópica con poca luz.
- pinterp interpola entre dos imágenes siempre que ambas tengan búferes z . Utiliza rtrace para rellenar huecos. Se utiliza para acelerar la velocidad de renderizado de animaciones simples.
- ximage es un visor de imágenes para ver imágenes HDR Radiance. Puede ajustar la exposición simulada y aplicar algunos de los efectos visuales humanos de pcond .
Integración
- rad es un front-end que lee un archivo '.rif' que describe una escena y múltiples vistas de cámara. Anteriormente, make y un archivo MAKE se usaban en una función similar. rad coordenadas oconv , mkillum , rpict / rview y otros programas para prestar una imagen (o previsualización) desde el archivo de escena fuente (s).
- trad es una interfaz gráfica de usuario para rad usando Tcl / Tk .
- ranimate es un front-end que coordina muchos programas para generar animaciones virtuales de recorrido, es decir, la cámara se mueve pero la escena es estática.
Referencias
- ^ Luebkeman, Chris; Simondetti, Alvise (25-30 de junio de 2006), "Practice 2006: Toolkit 2020" , Computación inteligente en ingeniería y arquitectura: 13º Taller EG-ICE , Springer, p. 442, ISBN 3540462465.
- ^ Geoffrey G. Roy, Un estudio comparativo de paquetes de simulación de iluminación adecuados para su uso en diseño arquitectónico, Universidad de Murdoch, octubre de 2000
- ^ James D. Murray, William vanRyper (abril de 1996). "Enciclopedia de formatos de archivos gráficos, segunda edición" . O'Reilly . ISBN 1-56592-161-5. Consultado el 27 de febrero de 2014 .Mantenimiento de CS1: utiliza el parámetro de autores ( enlace )
Fuentes
- Greg Ward Larson y Rob Shakespeare, Renderizado con Radiance , Morgan Kaufmann, 1998. ISBN 1-55860-499-5
enlaces externos
- Página de inicio de Radiance
- Radiance en línea
- Renderizado con Radiance en línea
- Anyhere Software: la empresa de consultoría de Greg Ward