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.
Use a function
Section titled “Use a function”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.