Home

Awesome

Anima

Anima is an add-on for the Godot game engine that simplifies the process of creating dynamic and impactful UI animations.

Introduction

Example of animation created with anima

Working with Godot's Tween to create UI animations can be quite challenging. However, Anima, an add-on for Godot, simplifies the process by allowing you to create animations using a clear and concise syntax with just a few lines of code. With 89 built-in animations and 33 easing options, Anima provides a vast array of options to choose from. Moreover, you can easily add your animations using a syntax similar to CSS, making it a convenient tool for developers.

Table of Contents

Installation

This is a regular editor plugin. Copy the contents of addons/Anima into the same folder in your project, and activate it in your project settings.

Documentation & Demo

Check out documentation, demo code and live examples.

Differences between Anima and Godot Tween

AnimaTween
Chainingsupport for sequential, parallel and concurrent animationsOnly Godot 4
Easing33 built-in, more can be added programmaticallylimited
Use Curve as easingyesno
Set Pivot pointyes (2D Only)no
Create and reuse custom animations89 built-in, more can be added programmaticallyNo
Animate elements in group or gridsyesNo
Multiple distance formulas for Grid animationsyesno
LoopInfinite, Times, and delayed loopsInfinite only
Animate relative valuesyesOnly Godot 4
Play/Loop backwardsyesno
Dynamic valuesyesno
CSS-Like animationsyesno

Example

var anima = Anima.Node($Node).anima_keyframes({
    from = {
        opacity = 0,
        scale = Vector2(0.5, 0.5),
    },
    to = {
        opacity = 1,
        scale = Vector2.ONE
    },
    easing = Anima.EASING.EASE_OUT_BACK,
})

await anima.play()

anima.play_reverse_with_delay(1)

Built-in animations

Original source: https://github.com/animate-css/animate.css

Stay in Touch

Contribution

Contributions are welcome and are accepted via pull requests.

License

MIT

Copyright (c) 2021-present, Alessandro Senese (ceceppa)