AnimatedSprite2D
Eredita: Node2D < CanvasItem < Node < Object
Nodo di sprite che contiene più texture come fotogrammi da riprodurre per l'animazione.
Descrizione
AnimatedSprite2D è simile al nodo Sprite2D, eccetto che trasporta molteplici texture come fotogrammi di animazione. Le animazioni sono create usando una risorsa SpriteFrames, che consente di importare i file di immagine (o una cartella contenente tali file) per fornire i fotogrammi di animazione per lo sprite. La risorsa SpriteFrames può essere configurata nell'editor tramite il pannello inferiore di SpriteFrames.
Tutorial
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Metodi
get_playing_speed() const |
|
is_playing() const |
|
void |
pause() |
void |
play(name: StringName = &"", custom_speed: float = 1.0, from_end: bool = false) |
void |
play_backwards(name: StringName = &"") |
void |
set_frame_and_progress(frame: int, progress: float) |
void |
stop() |
Segnali
animation_changed() 🔗
Emesso quando animation cambia.
animation_finished() 🔗
Emesso quando l'animazione raggiunge la fine, o l'inizio se è riprodotta al rovescio. Quando l'animazione termina, mette in pausa la riproduzione.
Nota: Questo segnale non viene emesso se un'animazione si sta ripetendo.
animation_looped() 🔗
Emesso quando l'animazione si ripete.
frame_changed() 🔗
Emesso quando frame cambia.
sprite_frames_changed() 🔗
Emesso quando sprite_frames cambia.
Descrizioni delle proprietà
StringName animation = &"default" 🔗
void set_animation(value: StringName)
StringName get_animation()
L'animazione attuale dalla risorsa sprite_frames. Se questo valore è cambiato, il contatore frame e il frame_progress sono ripristinati.
La chiave dell'animazione da riprodurre quando la scena è caricata.
Se true, la texture sarà centrata.
Nota: Per i giochi con un'estetica di pixel art, le texture possono apparire deformate quando centrate. Ciò è causato dalla loro posizione che è in mezzo a i pixel. Per evitarlo, imposta questa proprietà a false, o considera abilitare ProjectSettings.rendering/2d/snap/snap_2d_vertices_to_pixel e ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel.
Se true, la texture è capovolta orizzontalmente.
Se true, la texture è capovolta verticalmente.
L'indice del fotogramma di animazione visualizzato. Impostare questa proprietà reimposta anche frame_progress. Se questo non è desiderato, utilizza set_frame_and_progress().
Il valore di progresso tra 0.0 e 1.0 fino a quando il fotogramma attuale passa al fotogramma successivo. Se l'animazione è riprodotta all'indietro, il valore passa da 1.0 a 0.0.
Vector2 offset = Vector2(0, 0) 🔗
Lo scostamento di disegno della texture.
Il rapporto di scala della velocità. Ad esempio, se questo valore è 1, l'animazione è riprodotta alla velocità normale. Se è 0.5, allora è riprodotta alla velocità dimezzata. Se è 2, allora è riprodotta alla velocità doppia.
Se impostato a un valore negativo, l'animazione è riprodotta al rovescio. Se impostato su 0, l'animazione non avanza.
SpriteFrames sprite_frames 🔗
void set_sprite_frames(value: SpriteFrames)
SpriteFrames get_sprite_frames()
La risorsa SpriteFrames contenente l'animazione(i). Consente di caricare, modificare, cancellare, rendere unici e salvare gli stati della risorsa SpriteFrames.
Descrizioni dei metodi
float get_playing_speed() const 🔗
Restituisce la velocità di riproduzione effettiva dell'animazione attuale o 0 se non è riprodotta. Questa velocità è la proprietà speed_scale moltiplicata per l'argomento custom_speed specificato quando si chiama il metodo play().
Restituisce un valore negativo se l'animazione corrente si sta riproducendo all'indietro.
Restituisce true se un'impostazione è attualmente in riproduzione (anche se speed_scale e/o custom_speed sono 0).
void pause() 🔗
Pausa l'animazione attualmente in riproduzione. Il frame e frame_progress saranno mantenuti e chiamando play() o play_backwards() senza argomenti riprenderà l'animazione dalla posizione di riproduzione corrente.
Vedi anche stop().
void play(name: StringName = &"", custom_speed: float = 1.0, from_end: bool = false) 🔗
Riproduce l'animazione con la chiave name. Se custom_speed è negativo e from_end è true, l'animazione sarà riprodotta all'indietro (che equivale a chiamare play_backwards()).
Se questo metodo è chiamato con lo stesso nome dell'animazione di name, o senza il parametro name, l'animazione assegnata riprenderà la riproduzione se è stata messa in pausa.
void play_backwards(name: StringName = &"") 🔗
Riproduce l'animazione con la chiave name al rovescio.
Questo metodo è una abbreviazione per play() con custom_speed = -1.0 e from_end = true, quindi vedi la sua descrizione per ulteriori informazioni.
void set_frame_and_progress(frame: int, progress: float) 🔗
Imposta frame e frame_progress ai valori forniti. A differenza di impostare frame, questo metodo non ripristina frame_progress a 0.0 implicitamente.
Esempio: Cambia l'animazione, mantenendo lo stesso frame e frame_progress.
var current_frame = animated_sprite.get_frame()
var current_progress = animated_sprite.get_frame_progress()
animated_sprite.play("walk_another_skin")
animated_sprite.set_frame_and_progress(current_frame, current_progress)
void stop() 🔗
Interrompe l'animazione attualmente in riproduzione. La posizione di animazione è ripristinata a 0 e custom_speed è ripristinato a 1.0. Vedi anche pause().