lunedì 8 settembre 2025

GODOT - Nascondere la visualizzazione all'esterno di margini desiderati

Sviluppando "Space Bricks", mi è capitato di dover "nascondere" parte della visualizzazione di un'animazione che "usciva dai bordi" (per la cronaca, quella dell'esplosione). Sono riuscito a farlo in Love2D, ma in Godot... ho dovuto sbatterci parecchio la testa.

Per risolvere il problema, bisogna inserire nella scena un controllo che abbia una posizione ed una dimensione.
La scelta è ricaduta sul nodo "ColorRect", che ha entrambi le voci di configurazione impostabili.

Nota: anche questo fa parte dei nodi "Control", non è un problema inserirlo come figlio di un "semplice" Node2D. L'editor mostrerà un avviso, ma il funzionamento sarà comunque corretto.

Una volta inserito il nodo ed impostato "Size" e "Position" (sotto Transform), questo nodo andrà utilizzato per l'inserimento degli elementi "da mascherare" (nel mio caso, è un inserimento dinamico).
Per abilitare la visualizzazione dei "nodi figli" in modo che utilizzi il ColorRect come maschera, bisognerà attivare (flag "On") i seguenti due parametri di configurazione:
  • Clip Content (sotto Layout)
  • Clip Children -da impostare a "Clip Only"- (sotto "Visibility")
La prima effettuerà il vero e proprio "clipping", mentre la seconda visualizzerà solo i nodi figli senza mostrare a video l'oggetto ColorRect (e cioè un pannello a tinta unita).

Nessun commento:

Posta un commento