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.

CanvasLayer

Hereda: Node < Object

Heredado por: ParallaxBackground

Un nodo utilizado para el renderizado independiente de objetos dentro de una escena 2D.

Descripción

Los nodos derivados de CanvasItem que son hijos directos o indirectos de un CanvasLayer se dibujarán en esa capa. La capa es un índice numérico que define el orden de dibujo. La escena 2D predeterminada se renderiza con el índice 0, por lo que un CanvasLayer con índice -1 se dibujará debajo, y un CanvasLayer con índice 1 se dibujará encima. Este orden se mantendrá independientemente del CanvasItem.z_index de los nodos dentro de cada capa.

Los CanvasLayer pueden ocultarse y también pueden seguir opcionalmente el viewport. Esto los hace útiles para HUDs como superposiciones de barras de vida (en capas 1 y superiores) o fondos (en capas -1 e inferiores).

Nota: Las Window incrustadas se colocan en la capa 1024. Los CanvasItem en las capas 1025 y superiores aparecen delante de las ventanas incrustadas.

Nota: Cada CanvasLayer se dibuja en un Viewport específico y no puede compartirse entre múltiples Viewport; consulta custom_viewport. Al usar múltiples Viewport, por ejemplo en un juego con pantalla dividida, necesitas crear un CanvasLayer individual para cada Viewport en el que quieras que se dibuje.

Tutoriales

Propiedades

Node

custom_viewport

bool

follow_viewport_enabled

false

float

follow_viewport_scale

1.0

int

layer

1

Vector2

offset

Vector2(0, 0)

float

rotation

0.0

Vector2

scale

Vector2(1, 1)

Transform2D

transform

Transform2D(1, 0, 0, 1, 0, 0)

bool

visible

true

Métodos

RID

get_canvas() const

Transform2D

get_final_transform() const

void

hide()

void

show()


Señales

visibility_changed() 🔗

Emitida cuando se modifica la visibilidad de la capa. Véase visible.


Descripciones de Propiedades

Node custom_viewport 🔗

  • void set_custom_viewport(value: Node)

  • Node get_custom_viewport()

El nodo personalizado Viewport asignado al CanvasLayer. Si null, utiliza en su lugar la vista por defecto.


bool follow_viewport_enabled = false 🔗

  • void set_follow_viewport(value: bool)

  • bool is_following_viewport()

Si está habilitado, el CanvasLayer mantiene su posición en el world space. Si está deshabilitado, el CanvasLayer se mantiene en una posición fija en la pantalla.

Junto con follow_viewport_scale, esto puede usarse para un pseudo-3D effect.


float follow_viewport_scale = 1.0 🔗

  • void set_follow_viewport_scale(value: float)

  • float get_follow_viewport_scale()

Scales the layer when using follow_viewport_enabled. Layers moving into the foreground should have increasing scales, while layers moving into the background should have decreasing scales.


int layer = 1 🔗

  • void set_layer(value: int)

  • int get_layer()

Índice de capa para el orden de dibujo. Los valores más bajos se dibujan detrás de los valores más altos.

Nota: Si varios CanvasLayers tienen el mismo índice de capa, los hijos CanvasItem de un CanvasLayer se dibujan detrás de los hijos CanvasItem del otro CanvasLayer. Qué CanvasLayer se dibuja al frente no es determinista.

Nota: El índice de capa debe estar entre RenderingServer.CANVAS_LAYER_MIN y RenderingServer.CANVAS_LAYER_MAX (inclusivo). Cualquier otro value se envolverá wrap alrededor.


Vector2 offset = Vector2(0, 0) 🔗

El desplazamiento de la capa base.


float rotation = 0.0 🔗

  • void set_rotation(value: float)

  • float get_rotation()

La rotación de la capa en radianes.


Vector2 scale = Vector2(1, 1) 🔗

La escala de la capa.


Transform2D transform = Transform2D(1, 0, 0, 1, 0, 0) 🔗

La transformación de la capa.


bool visible = true 🔗

  • void set_visible(value: bool)

  • bool is_visible()

Si es false, cualquier CanvasItem debajo de este CanvasLayer estará oculto.

A diferencia de CanvasItem.visible, la visibilidad de un CanvasLayer no se propaga a capas subyacentes.


Descripciones de Métodos

RID get_canvas() const 🔗

Devuelve el RID del canvas usado por esta capa.


Transform2D get_final_transform() const 🔗

Returns the transform from the CanvasLayers coordinate system to the Viewports coordinate system.


void hide() 🔗

Hides any CanvasItem under this CanvasLayer. This is equivalent to setting visible to false.


void show() 🔗

Shows any CanvasItem under this CanvasLayer. This is equivalent to setting visible to true.