Reflection Probe

Introducción

Como se indica en el Material Spatial, los objetos pueden mostrar luz reflejada o difusa. Reflection probe se utiliza como fuente de luz reflejada y ambiental para los objetos dentro de su área de influencia.

Una sonda de este tipo captura los alrededores (como una especie de imagen de 360 grados), y almacena versiones de la misma con niveles crecientes de blur. Se utiliza para simular la rugosidad de los materiales, así como la iluminación ambiental.

Si bien estos probes son una forma eficiente de almacenar los reflejos, tienen algunas deficiencias:

  • Son eficientes en la representación, pero caros en el cálculo. Esto lleva a un comportamiento por defecto donde sólo capturan en la carga de la escena.
  • Funcionan mejor para habitaciones o lugares rectangulares, de lo contrario los reflejos que se muestran no son tan fieles (especialmente cuando la rugosidad es 0).

Configurando

Crea un nodo ReflectionProbe y haz que envuelva el área donde quieres tener reflejos:

../../_images/refprobe_setup.png

Esto debería dar como resultado reflexiones locales inmediatas. Si estás usando una textura del cielo, los reflejos se mezclan por defecto con ella.

Por defecto, en interiores, los reflejos pueden parecer poco consistentes. En este escenario, asegúrate de marcar la propiedad "Box Correct" .

../../_images/refprobe_box_property.png

Este ajuste cambia el reflejo de una skybox infinita por el reflejo de una caja del tamaño de probe:

../../_images/refprobe_boxcorrect.png

Ajustar las paredes de la caja puede ayudar a mejorar un poco el reflejo, pero siempre se verá mejor en las habitaciones con forma de caja.

Probe captura los entornos desde el centro del gizmo. Si, por alguna razón, la forma de la habitación o el contenido ocluyen su centro, puede ser desplazado a un lugar vacío moviendo los manejadores al centro:

../../_images/refprobe_center_gizmo.png

Por defecto, el mapeo de sombras está desactivado al renderizar las sondas (sólo en la imagen renderizada dentro de la sonda, no en la escena actual). Esta es una forma sencilla de ahorrar en rendimiento y memoria. Si quieres sombras en la sonda, pueden ser activadas o desactivadas con el ajuste Enable Shadow:

../../_images/refprobe_shadows.png

Por último, toma en cuenta que tal vez no quieras que Reflection Probe renderice algunos objetos. Un escenario típico es un enemigo dentro de la habitación que se moverá. Para evitar que los objetos se rendericen en los reflejos, usa el ajuste de Cull Mask:

../../_images/refprobe_cullmask.png

Interior vs exterior

Si está utilizando sondas de reflexión en un ambiente interior, se recomienda que la propiedad Interior esté activada. Esto impide que la sonda represente el cielo y también permite ajustes personalizados de iluminación ambiental.

../../_images/refprobe_ambient.png

Cuando las sondas están configuradas en Interior, se puede especificar una iluminación ambiental constante personalizada por cada sonda. Sólo tienes que elegir un color y una energía.

Opcionalmente, puede mezclar esta luz ambiental con la captura difusa de la sonda ajustando la propiedad Ambient Contribution (0.0 significa color ambiental puro, mientras que 1.0 significa captura difusa pura).

Blending

Se pueden utilizar sondas de reflexión múltiple, y Godot las mezclará donde se superpongan utilizando un algoritmo inteligente:

../../_images/refprobe_blending.png

Como pueden ver, esta mezcla nunca es perfecta (después de todo, estos son reflejos de caja, no reflejos reales), pero estos artefactos sólo son visibles cuando se utilizan reflejos perfectamente reflejados. Normalmente, las escenas tienen un mapeo normal y diferentes niveles de rugosidad, que pueden ocultar esto.

Alternativamente, las Reflection Probes funcionan bien mezcladas con los Screen Space Reflections para resolver estos problemas. Combinándolas hace que los reflejos locales parezcan más fieles, mientras que las sondas sólo se utilizan como una solución alternativa cuando no se encuentra información sobre el espacio en la pantalla:

../../_images/refprobe_ssr.png

Por último, la mezcla de sondas interiores y exteriores es el enfoque recomendado cuando se hacen niveles que combinan tanto interiores como exteriores. Cerca de la puerta, una sonda puede ser marcada como exterior (así obtendrá reflejos del cielo) mientras que en el interior, puede ser interior.

Reflection atlas

En la actual implementación del renderizador, todas las sondas son del mismo tamaño y caben en un Reflection Atlas. El tamaño y la cantidad de sondas se pueden personalizar en Configuración del proyecto -> Calidad -> Reflections

El ajuste por defecto de Atlas Subdiv: 8 permitirá hasta 16 sondas de reflexión en una escena. Este valor debe ser aumentado si se necesitan más sondas de reflexión.

../../_images/refprobe_atlas.png