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...
CanvasGroup
Eredita: Node2D < CanvasItem < Node < Object
Unisce vari nodi 2D in un'unica operazione di disegno.
Descrizione
Child CanvasItem nodes of a CanvasGroup are drawn as a single object. It allows to e.g. draw overlapping translucent 2D nodes without causing the overlapping sections to be more opaque than intended (set the CanvasItem.self_modulate property on the CanvasGroup to achieve this effect).
Note: The CanvasGroup uses a custom shader to read from the backbuffer to draw its children. Assigning a Material to the CanvasGroup overrides the built-in shader. To duplicate the behavior of the built-in shader in a custom Shader, use the following:
shader_type canvas_item;
render_mode unshaded;
uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, filter_nearest;
void fragment() {
vec4 c = textureLod(screen_texture, SCREEN_UV, 0.0);
if (c.a > 0.0001) {
c.rgb /= c.a;
}
COLOR *= c;
}
Note: Since CanvasGroup and CanvasItem.clip_children both utilize the backbuffer, children of a CanvasGroup who have their CanvasItem.clip_children set to anything other than CanvasItem.CLIP_CHILDREN_DISABLED will not function correctly.
Proprietà
|
||
|
||
|
Descrizioni delle proprietà
Imposta la dimensione del margine utilizzato per espandere il rettangolo di compensazione di questo CanvasGroup. Questo espande l'area del backbuffer che sarà utilizzata dal CanvasGroup. Un margine più piccolo ridurrà l'area utilizzata dal backbuffer, il che può aumentare le prestazioni, tuttavia se use_mipmaps è abilitato, un margine piccolo potrebbe causare errori nelle mipmap sul bordo del CanvasGroup. Pertanto, questo dovrebbe essere lasciato il più piccolo possibile, ma dovrebbe essere aumentato se compaiono artefatti lungo i bordi del gruppo canvas.
Imposta la dimensione di un margine utilizzato per espandere il rettangolo disegnabile di questo CanvasGroup. La dimensione del CanvasGroup è determinata adattando un rettangolo attorno ai suoi figli, quindi espandendo tale rettangolo di fit_margin. Ciò aumenta sia l'area del backbuffer utilizzata, sia l'area coperta dal CanvasGroup, entrambe le quali possono ridurre le prestazioni. Dovrebbe essere mantenuto il più piccolo possibile e dovrebbe essere espanso solo quando è necessaria una dimensione maggiore (ad esempio per effetti di shader personalizzati).
Se true, calcola le mipmap per il backbuffer prima di disegnare il CanvasGroup in modo che le mipmap siano utilizzabili in uno ShaderMaterial personalizzato allegato al CanvasGroup. La generazione delle mipmap ha un costo in termini di prestazioni, pertanto questa opzione non dovrebbe essere abilitata a meno che non sia necessario.