Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
DirectionalLight3D
Eredita: Light3D < VisualInstance3D < Node3D < Node < Object
Luce direzionale proveniente da lontano, come quella del sole.
Descrizione
Una luce direzionale è un tipo di nodo Light3D che modella un numero infinito di raggi paralleli che coprono l'intera scena. È utilizzato per luci con forte intensità che si trovano lontano dalla scena (ad esempio: per modellare la luce solare o la luce lunare).
La luce è emessa nella direzione -Z della base globale del nodo. Per una luce non ruotata, ciò significa che la luce è emessa in avanti, illuminando il lato frontale di un modello 3D (vedi Vector3.FORWARD e Vector3.MODEL_FRONT). La posizione del nodo è ignorata. Solo la base è utilizzata per determinare la direzione della luce.
Tutorial
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Enumerazioni
enum ShadowMode: 🔗
ShadowMode SHADOW_ORTHOGONAL = 0
Renderizza l'intera mappa delle ombre della scena da un punto di vista ortogonale. Questa è la modalità di ombre direzionali più veloce. Potrebbe causare ombre più sfocate sugli oggetti vicini.
ShadowMode SHADOW_PARALLEL_2_SPLITS = 1
Divide il tronco della vista in 2 aree, ciascuna con la propria mappa delle ombre. Questa modalità di ombre è un compromesso tra SHADOW_ORTHOGONAL e SHADOW_PARALLEL_4_SPLITS in termini di prestazioni.
ShadowMode SHADOW_PARALLEL_4_SPLITS = 2
Divide il tronco di vista in 4 aree, ciascuna con la propria mappa delle ombre. Questa è la modalità di ombre direzionali più lenta.
enum SkyMode: 🔗
SkyMode SKY_MODE_LIGHT_AND_SKY = 0
Rende la luce visibile sia nell'illuminazione della scena sia nel rendering del cielo.
SkyMode SKY_MODE_LIGHT_ONLY = 1
Rende la luce visibile solo nell'illuminazione della scena (inclusa l'illuminazione diretta e l'illuminazione globale). Quando si usa questa modalità, la luce non sarà visibile dagli shader del cielo.
SkyMode SKY_MODE_SKY_ONLY = 2
Rende la luce visibile solo agli shader del cielo. Quando si usa questa modalità, la luce non proietterà luce nella scena (né tramite illuminazione diretta né tramite illuminazione globale), ma è possibile accedervi tramite gli shader del cielo. Questo può essere utile, ad esempio, quando si desidera controllare gli effetti del cielo senza illuminare la scena (ad esempio durante un ciclo notturno).
Descrizioni delle proprietà
bool directional_shadow_blend_splits = false 🔗
Se true, il dettaglio dell'ombra è sacrificato in cambio di transizioni più fluide tra le divisioni. Abilitare la divisione della fusione delle ombre ha anche un costo di prestazioni moderato. Questo è ignorato quando directional_shadow_mode è SHADOW_ORTHOGONAL.
float directional_shadow_fade_start = 0.8 🔗
Proporzione di directional_shadow_max_distance in cui l'ombra inizia a dissolversi. A directional_shadow_max_distance, l'ombra scomparirà. Il valore predefinito è un equilibrio tra dissolvenza uniforme e visibilità dell'ombra distante. Se la telecamera si muove velocemente e directional_shadow_max_distance è bassa, considera abbassare directional_shadow_fade_start sotto 0.8 per rendere meno evidenti le transizioni dell'ombra. Al contrario, se hai regolato directional_shadow_max_distance per coprire l'intera scena, puoi impostare directional_shadow_fade_start su 1.0 per evitare che l'ombra si dissolva in lontananza (verrà invece troncata bruscamente).
float directional_shadow_max_distance = 100.0 🔗
La distanza massima per le divisioni delle ombre. Aumentando questo valore, le ombre direzionali saranno visibili da più lontano, a costo di un dettaglio complessivo delle ombre inferiore e di prestazioni inferiori (poiché è necessario includere più oggetti nel rendering delle ombre direzionali).
ShadowMode directional_shadow_mode = 2 🔗
void set_shadow_mode(value: ShadowMode)
ShadowMode get_shadow_mode()
L'algoritmo di rendering delle ombre della luce.
float directional_shadow_pancake_size = 20.0 🔗
Imposta la dimensione del pancake direzionale dell'ombra. Il pancake devia l'inizio del tronco della telecamera dell'ombra per fornire una risoluzione di profondità effettiva più elevata per l'ombra. Tuttavia, una dimensione elevata del pancake può causare artefatti nelle ombre di oggetti di grandi dimensioni che sono vicini al bordo del tronco. Ridurre la dimensione del pancake può aiutare. Impostando la dimensione su 0 si disattiva l'effetto pancake.
float directional_shadow_split_1 = 0.1 🔗
La distanza della telecamera alla divisione 1 dell'ombra. Relativa a directional_shadow_max_distance. Utilizzata solo quando directional_shadow_mode è SHADOW_PARALLEL_2_SPLITS o SHADOW_PARALLEL_4_SPLITS.
float directional_shadow_split_2 = 0.2 🔗
La distanza della divisione 1 all'ombra alla divisione 2. Relativa a directional_shadow_max_distance. Utilizzata solo quando directional_shadow_mode è SHADOW_PARALLEL_4_SPLITS.
float directional_shadow_split_3 = 0.5 🔗
La distanza della divisione 2 dell'ombra alla divisione 3. Relativa a directional_shadow_max_distance. Utilizzata solo quando directional_shadow_mode è SHADOW_PARALLEL_4_SPLITS.
Se questa DirectionalLight3D è visibile nel cielo, nella scena, o in entrambi.