PhysicalSkyMaterial

Hereda: Material < Resource < RefCounted < Object

Un material que define un cielo para un recurso Sky mediante un conjunto de propiedades físicas.

Descripción

El PhysicalSkyMaterial utiliza el modelo analítico de luz diurna de Preetham para dibujar un cielo basado en propiedades físicas. Esto da como resultado un cielo sustancialmente más realista que el ProceduralSkyMaterial, pero es ligeramente más lento y menos flexible.

El PhysicalSkyMaterial sólo admite un sol. El color, la energía y la dirección del sol se toman de la primera DirectionalLight3D en el árbol de la escena.

Propiedades

float

energy_multiplier

1.0

Color

ground_color

Color(0.1, 0.07, 0.034, 1)

float

mie_coefficient

0.005

Color

mie_color

Color(0.69, 0.729, 0.812, 1)

float

mie_eccentricity

0.8

Texture2D

night_sky

float

rayleigh_coefficient

2.0

Color

rayleigh_color

Color(0.3, 0.405, 0.6, 1)

float

sun_disk_scale

1.0

float

turbidity

10.0

bool

use_debanding

true


Descripciones de Propiedades

float energy_multiplier = 1.0 🔗

  • void set_energy_multiplier(value: float)

  • float get_energy_multiplier()

The sky's overall brightness multiplier. Higher values result in a brighter sky.


Color ground_color = Color(0.1, 0.07, 0.034, 1) 🔗

  • void set_ground_color(value: Color)

  • Color get_ground_color()

Modula el Color en la mitad inferior del cielo para representar el suelo.


float mie_coefficient = 0.005 🔗

  • void set_mie_coefficient(value: float)

  • float get_mie_coefficient()

Controla la fuerza de la dispersión de Mie en el cielo. La dispersión de Mie es el resultado de la luz que colisiona con partículas más grandes (como el agua). En la tierra, la dispersión de Mie da como resultado un color blanquecino alrededor del sol y el horizonte.


Color mie_color = Color(0.69, 0.729, 0.812, 1) 🔗

  • void set_mie_color(value: Color)

  • Color get_mie_color()

Controla el Color del efecto de la Dispersión de Mie. Aunque no es físicamente preciso, esto permite la creación de planetas con aspecto alienígena.


float mie_eccentricity = 0.8 🔗

  • void set_mie_eccentricity(value: float)

  • float get_mie_eccentricity()

Controla la dirección de la Dispersión de Mie. Un valor de 1 significa que cuando la luz golpea una partícula, esta pasa directamente hacia adelante. Un valor de -1 significa que toda la luz se dispersa hacia atrás.


Texture2D night_sky 🔗

Texture2D para el cielo nocturno. Esto se añade al cielo, así que si es lo suficientemente brillante, puede ser visible durante el día.


float rayleigh_coefficient = 2.0 🔗

  • void set_rayleigh_coefficient(value: float)

  • float get_rayleigh_coefficient()

Controla la fuerza de la Dispersión de Rayleigh. La dispersión de Rayleigh es el resultado de la luz que colisiona con pequeñas partículas. Es responsable del color azul del cielo.


Color rayleigh_color = Color(0.3, 0.405, 0.6, 1) 🔗

  • void set_rayleigh_color(value: Color)

  • Color get_rayleigh_color()

Controla el Color de la Dispersión de Rayleigh. Aunque no es físicamente preciso, esto permite la creación de planetas con aspecto alienígena. Por ejemplo, si se establece en un Color rojo, se obtiene una atmósfera similar a la de Marte, con una puesta de sol azul correspondiente.


float sun_disk_scale = 1.0 🔗

  • void set_sun_disk_scale(value: float)

  • float get_sun_disk_scale()

Establece el tamaño del disco solar. El valor predeterminado se basa en el tamaño percibido de Sol desde la Tierra.


float turbidity = 10.0 🔗

  • void set_turbidity(value: float)

  • float get_turbidity()

Establece el grosor de la atmósfera. Una alta turbidez crea una atmósfera de aspecto brumoso, mientras que una baja turbidez da como resultado una atmósfera más clara.


bool use_debanding = true 🔗

  • void set_use_debanding(value: bool)

  • bool get_use_debanding()

Si es true, activa la reducción de bandas. La reducción de bandas añade una pequeña cantidad de ruido que ayuda a reducir las bandas que aparecen por los cambios suaves de color en el cielo.