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...
CanvasLayer
Ereditato da: ParallaxBackground
Un nodo utilizzato per il rendering indipendente di oggetti all'interno di una scena 2D.
Descrizione
I nodi derivati da CanvasItem che sono figli diretti o indiretti di un CanvasLayer saranno disegnati in quel livello. Il livello è un indice numerico che definisce l'ordine di disegno. La scena 2D predefinita renderizza con un indice 0, quindi un CanvasLayer con indice -1 sarà disegnato sotto, e un CanvasLayer con indice 1 sarà disegnato sopra. Questo ordine sarà mantenuto a prescindere dal CanvasItem.z_index dei nodi all'interno di ciascun livello.
È possibile nascondere i CanvasLayer e anche facoltativamente seguire la viewport. Ciò li rende utili per HUD come overlay di barre della salute (su livelli 1 e superiori) o sfondi (su livelli -1 e inferiori).
Nota: I nodi Window incorporati sono posizionati sul livello 1024. I CanvasItem sui livelli 1025 e superiori sono visualizzati davanti alle finestre incorporate.
Nota: Ogni CanvasLayer è disegnato su una specifica Viewport e non può essere condiviso tra più Viewport, vedi custom_viewport. Quando si utilizzano più Viewport, ad esempio in un gioco a schermo diviso, è necessario creare un CanvasLayer per ogni Viewport su cui si desidera che sia disegnato.
Tutorial
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Metodi
get_canvas() const |
|
get_final_transform() const |
|
void |
hide() |
void |
show() |
Segnali
visibility_changed() 🔗
Emesso quando la visibilità del livello viene modificata. Vedi visible.
Descrizioni delle proprietà
Il nodo Viewport personalizzato assegnato al CanvasLayer. Se null, utilizza invece la viewport predefinita.
bool follow_viewport_enabled = false 🔗
Se abilitato, il CanvasLayer mantiene la sua pozione in spazio globale. Se disabilitato, il CanvasLayer rimarrà in una posizione fissa sullo schermo.
Insieme a follow_viewport_scale può essere utilizzato per un effetto pseudo 3D.
float follow_viewport_scale = 1.0 🔗
Ridimensiona il livello quando si usa follow_viewport_enabled. I livelli che si spostano in primo piano dovrebbero avere scale crescenti, mentre i livelli che si spostano sullo sfondo dovrebbero avere scale decrescenti.
Indice di livello per l'ordine di visualizzazione. I valori più bassi sono disegnati dietro i valori più alti.
Nota: Se più CanvasLayer hanno lo stesso indice di livello, i figli CanvasItem di un CanvasLayer sono disegnati dietro i figli CanvasItem dell'altro CanvasLayer. Quale dei CanvasLayer è disegnato in primo piano non è deterministico.
Nota: L'indice di livello deve essere compreso tra RenderingServer.CANVAS_LAYER_MIN e RenderingServer.CANVAS_LAYER_MAX (inclusi). Qualsiasi altro valore verrà avvolto.
Vector2 offset = Vector2(0, 0) 🔗
Lo spostamento di base del livello.
La rotazione del livello in radianti.
Vector2 scale = Vector2(1, 1) 🔗
La scala del livello.
Transform2D transform = Transform2D(1, 0, 0, 1, 0, 0) 🔗
void set_transform(value: Transform2D)
Transform2D get_transform()
La trasformazione del livello.
Se false, qualsiasi CanvasItem sotto questo CanvasLayer sarà nascosto.
A differenza di CanvasItem.visible, la visibilità di un CanvasLayer non è propagata ai livelli sottostanti.
Descrizioni dei metodi
Restituisce il RID del canvas utilizzato da questo livello.
Transform2D get_final_transform() const 🔗
Restituisce la trasformazione dal sistema di coordinate del CanvasLayer al sistema di coordinate della Viewport.
void hide() 🔗
Nasconde qualsiasi CanvasItem sotto questo CanvasLayer. Ciò equivale a impostare visible su false.
void show() 🔗
Mostra qualsiasi CanvasItem sotto questo CanvasLayer. Ciò equivale a impostare visible su true.