4.1.3  Radiosidad sin iluminación convencional

También podéis eliminar todas las fuentes de luz y tener una iluminación de radiosidad pura. La situación en este caso es similar a la de un día nublado, cuando la luz no viene de una dirección específica sino de todo el cielo.

Las 2 imágenes siguientes muestran qué cambia con la escena usada en la 1ª parte, cuando la fuente de luz se elimina. (Radiosidad por defecto, pero con recursion_limit 1 y error_bound 0.2)

con fuente de luz
con fuente de luz
sin fuente de luz
sin fuente de luz

Observareis que cuando se elimina la fuente de luz toda la imagen se vuelve muy azul, porque la escena está iluminada por un cielo azul, mientras que en un día nublado, el color del cielo está entre gris y blanco.

Las siguientes imágenes muestran la escena de ejemplo utilizada en esta parte con diferentes ajustes para recursion_limit (el resto son los ajustes por defecto).

recursion_limit 1
recursion_limit 1
recursion_limit 2
recursion_limit 2
recursion_limit 3
recursion_limit 3

Esto se ve mucho peor que en la primera parte, porque los ajustes por defecto están seleccionados primordialmente para ser usados con fuentes de luz convencionales.

Las siguientes tres imágenes muestra el efecto de error_bound. (recursion_limit es 1 aquí) Sin fuentes de luz, esto es incluso más importante que si las hubiera, los valores buenos dependen mucho del escenario y otros ajustes, valores bajos no conllevan necesariamente mejores resultados.

error_bound 1.8
error_bound 1.8
error_bound 0.4
error_bound 0.4
error_bound 0.02
error_bound 0.02

Si hay artefactos, el incrementar count a menudo ayuda, afecta a la calidad en general y normalmente ayuda a eliminarlos (las 3 imágenes siguientes utilizan error_bound 0.02).

count 2
count 2
count 50
count 50
count 200
count 200

La siguiente secuencia muestra el efecto de nearest_count. La diferencia no es muy evidente, pero los valores grandes siempre dan mejores resultados (el máximo es 20). A partir de ahora todas las imágenes usan error_bound 0.2

nearest_count 2
nearest_count 2
nearest_count 5 (por defecto)
nearest_count 5 (por defecto)
nearest_count 10
nearest_count 10

minimum_reuse es un valor geométrico relacionado con el tamaño del dibujo en pixels y determina si los cálculos previos de radiosidad son reutilizados en un nuevo punto. Valores bajos conllevan cálculos más repetidos y por ello más ajustados.

minimum_reuse 0.001
minimum_reuse 0.001
minimum_reuse 0.015 (default)
minimum_reuse 0.015 (default)
minimum_reuse 0.1
minimum_reuse 0.1

En la mayoría de los casos no es necesario cambiar el low_error_factor. Este factor reduce el valor de error_bound durante el final del paso de pretrace. pretrace_end ha sido disminuido a 0.01 en estás imágenes, la segunda fila muestra la diferencia con los ajustes por defecto. A veces, cambiar este valor puede ayudar a eliminar artefactos persistentes.

low_error_factor 0.01
low_error_factor 0.01
low_error_factor 0.5 (por defecto)
low_error_factor 0.5 (por defecto)
low_error_factor 1.0
low_error_factor 1.0
low_error_factor 0.01
low_error_factor 0.01
        
low_error_factor 1.0
low_error_factor 1.0

gray_threshold reduce el color en los cálculos de radiosidad. Como se ha mencionado más arriba el cielo azul afecta al color de la escena en general cuando se calcula la radiosidad. Para reducir este efecto colorante sin afectar a la radiosidad en general podéis incrementar gray_threshold. 1.0 significa ausencia total de color en la radiosidad.

gray_threshold 0.0 (por defecto)
gray_threshold 0.0 (por defecto)
gray_threshold 0.5
gray_threshold 0.5
gray_threshold 1.0
gray_threshold 1.0

Otro parámetro importante es pretrace_end. Junto con pretrace_start especifica los pasos de pretrace que se efectúan. Valores bajos conllevan más pasos de pretrace y resultados más ajustados pero también ralentizan significativamente el dibujado.

pretrace_end 0.2
pretrace_end 0.2
pretrace_end 0.02
pretrace_end 0.02
pretrace_end 0.004
pretrace_end 0.004

Es bueno experimentar con las cosas que afectan a la radiosidad para descubrir como funciona. Las 3 imágenes siguientes muestran algunos experimentos más.

ambient 3 en lugar de ambient 0 para un objeto
ambient 3 en lugar de ambient 0 para un objeto
ambient 0.5 en lugar de ambient 0 para todos los objetos cielo: ambient 0
ambient 0.5 en lugar de ambient 0 para todos los objetos cielo: ambient 0
error_bound 0.04 recursion_limit 2
error_bound 0.04 recursion_limit 2

Finalmente puedes cambiar drásticamente la apariencia de toda la escena con una textura para el cielo. Las siguientes imágenes muestran algunos ejemplos.

gradiente amarillo-azul de izquierda a derecha
gradiente amarillo-azul de izquierda a derecha
gradiente claro-oscuro de izquierda a derecha
gradiente claro-oscuro de izquierda a derecha
gradiente claro-oscuro de abajo a arriba
gradiente claro-oscuro de abajo a arriba

Unos resultados realmente buenos dependen en gran parte de la situación particular y la apariencia que se desee para la escena. Aquí hay un dibujo de "alta calidad" de esta escena en particular, pero los requisitos pueden ser muy diferentes en otras situaciones.

  global_settings {
    radiosity {
      pretrace_start 0.08
      pretrace_end   0.01
      count 500

      nearest_count 10
      error_bound 0.02
      recursion_limit 1

      low_error_factor 0.2
      gray_threshold 0.0
      minimum_reuse 0.015
      brightness 1

      adc_bailout 0.01/2
    }
  }
Alta calidad
Alta calidad