AnimatedSprite

Inherits: Node2D < CanvasItem < Node < Object

可以使用多个纹理进行动画处理的 Sprite 节点。

描述

动画通过一个 SpriteFrames 资源创建,而该资源可以通过动画帧面板在编辑器中配置。

注意:您可以通过创建附加的带有 _normal 后缀的 SpriteFrames 资源来关联一组法线贴图。例如,如有 2 个 SpriteFrames 资源 runrun_normal,将使 run 动画使用该法线贴图。

教程

属性

String

animation

“default”

bool

centered

true

bool

flip_h

false

bool

flip_v

false

int

frame

0

SpriteFrames

frames

Vector2

offset

Vector2( 0, 0 )

bool

playing

false

float

speed_scale

1.0

方法

void

play ( String anim=””, bool backwards=false )

void

stop ( )

信号

  • animation_finished ( )

动画结束时(播放最后一帧时)发出。如果动画正在循环播放,则每次绘制最后一帧时都会发出此信号。


  • frame_changed ( )

frame更改时发出。

属性说明

Default

“default”

Setter

set_animation(value)

Getter

get_animation()

来自 frames 资源的当前动画。如果这个值发生变化,frame 计数器会被重置。


Default

true

Setter

set_centered(value)

Getter

is_centered()

true 时纹理将被居中。


Default

false

Setter

set_flip_h(value)

Getter

is_flipped_h()

true 时纹理将被水平翻转。


Default

false

Setter

set_flip_v(value)

Getter

is_flipped_v()

true 时纹理将被垂直翻转。


Default

0

Setter

set_frame(value)

Getter

get_frame()

显示的动画帧的索引。


Setter

set_sprite_frames(value)

Getter

get_sprite_frames()

包含动画的 SpriteFrames 资源。


Default

Vector2( 0, 0 )

Setter

set_offset(value)

Getter

get_offset()

纹理的绘图偏移量。


Default

false

Setter

set_playing(value)

Getter

is_playing()

如果 true,则表示当前正在播放 animation


Default

1.0

Setter

set_speed_scale(value)

Getter

get_speed_scale()

动画速度乘以此值。

方法说明

  • void play ( String anim=””, bool backwards=false )

播放由 anim 指定的播放。如果没有指定 anim 参数,则播放当前动画。 如果 backwardstrue ,则倒序播放动画。


  • void stop ( )

停止播放当前动画(不会重置帧计数器)。