Sprite frame library for AnimatedSprite2D and AnimatedSprite3D.
Sprite frame library for an [AnimatedSprite2D] or [AnimatedSprite3D] node. Contains frames and animation data for playback.
Adds a new [param anim] animation to the library.
Adds a frame to the [param anim] animation. If [param at_position] is [code]-1[/code], the frame will be added to the end of the animation. [param duration] specifies the relative duration, see [method get_frame_duration] for details.
Removes all frames from the [param anim] animation.
Removes all animations. An empty [code]default[/code] animation will be created.
Duplicates the animation [param anim_from] to a new animation named [param anim_to]. Fails if [param anim_to] already exists, or if [param anim_from] does not exist.
Returns [code]true[/code] if [code]get_animation_loop_mode(anim) == LOOP_LINEAR[/code]. Otherwise, returns [code]false[/code].
Returns the loop mode for the [param anim] animation.
Returns an array containing the names associated to each animation. Values are placed in alphabetical order.
Returns the speed in frames per second for the [param anim] animation.
Returns the number of frames for the [param anim] animation.
Returns a relative duration of the frame [param idx] in the [param anim] animation (defaults to [code]1.0[/code]). For example, a frame with a duration of [code]2.0[/code] is displayed twice as long as a frame with a duration of [code]1.0[/code]. You can calculate the absolute duration (in seconds) of a frame using the following formula:
[codeblock]
absolute_duration = relative_duration / (animation_fps * abs(playing_speed))
[/codeblock]
In this example, [code]playing_speed[/code] refers to either [method AnimatedSprite2D.get_playing_speed] or [method AnimatedSprite3D.get_playing_speed].
Returns the texture of the frame [param idx] in the [param anim] animation.
Returns [code]true[/code] if the [param anim] animation exists.
Removes the [param anim] animation.
Removes the [param anim] animation's frame [param idx].
Changes the [param anim] animation's name to [param newname].
If [param loop] is [code]false[/code] equivalent to [code]set_animation_loop_mode(LOOP_NONE)[/code].
If [param loop] is [code]true[/code] equivalent to [code]set_animation_loop_mode(LOOP_LINEAR)[/code].
Sets the [param loop_mode] for the [param anim] animation.
Sets the speed for the [param anim] animation in frames per second.
Sets the [param texture] and the [param duration] of the frame [param idx] in the [param anim] animation. [param duration] specifies the relative duration, see [method get_frame_duration] for details.
The animation plays once and stops when it reaches the end, or the start if played in reverse.
The animation restarts from the beginning when it reaches the end, or from the end if played in reverse, repeating continuously.
The animation alternates direction each time it reaches the end or start, playing forward and then in reverse repeatedly.
[b]Note:[/b] Both [AnimatedSprite2D] and [AnimatedSprite3D] play the first/last frame for its duration only once at each end of the animation loop (instead of twice, once per forward/backward animation direction).