Skip to content
tweens.gd

GDScriptBeta

Functions

Supply your own easing as a function when a built-in family does not fit. It maps normalized progress to an interpolation weight.

Examples use the global Tweens class in a node script, with targets inside the scene tree.

var move := Tweens.position_2d_x(300.0, 0.6)
move.ease_function = func(t: float) -> float: return t * t
Tweens.play(sprite, move)

This starts slowly and accelerates. At halfway through the time, the weight is 0.25, so the sprite has travelled a quarter of the distance.

To keep the exact curve of a Godot transition, sample it with Tween.interpolate_value().

The easing reference covers validation and failures.

tweens.gd is made with math & ferrets, copyright © 2026 its contributors.

Godot logo by Andrea Calabró, licensed under CC BY 4.0.

"Easy, the Ferret" illustrations drawn by foxy_maria.

tweens.gd is released under the MIT License.

Godot is licensed under the MIT License.
tweens.gd is not affiliated with or endorsed by the Godot Foundation.