[picture]
A new fluent way to solve the decade old problem of queuing animations pretty easily. A simple example:
Fluent.Animation.New()
.With(gameObject)
.MoveTo(new Vector3(0, 100, 0), 3f)
.RotateTo(Quaternion.Euler(0, 90, 30), 3f);
So what happened here? Well, the New()
method created a new animation. The With
method made sure that all next animations are applied to the given gameObject
. The MoveTo
and RotateTo
functions animated the position and rotation of the gameObject
, one after the other in 3 seconds.
The animations were queued. The rotation occured after the movement, and that's the beauty of procedural/fluent scripting.
- Move, rotate, scale almost anything
- Execute animations in parallel
- Comes with 31 easing effects
- Support for custom easing effect
- Animate objects on a set of way points
- Animate custom components
- Animate custom fields/properties
- Extend class to add more features
- Customize animation update type
- Loop, control, or jump to specific animation
- Bezier, Spline and Linear waypoint paths
- Comes with 5 free easy to learn demos
[couple of screenshots]
Fluent gives the ability to animate almost anything we like. Let's try animating a customProperty
of a CustomComponent
.
Fluent.Animation.New()
.AnimateProperty(gameObject.GetComponent<CustomComponent>(), 'customProperty', 20f, 30f, 2f)
This will animate the customProperty
from 20f to 30f in 2 seconds. This code also works on built-in components and properties. AnimatePropertyBy
can be used if you don't want to specify the starting value.
[screenshot of promo]
Fluent comes with native support for animating objects on any path. Best part? The path could be either bezier, spline, or linear. Let me show you:
[screenshot of differences]
https://gist.github.com/AliFlux/7c40bda68f08930b554cf754d896b600
I was designing Extreme Air Combat game last year, and it was pretty difficult/verbose for me to create cut-scenes in which there are several moving objects one after another. And even more of a headache in which there are a few parallel animations involved. So I designed this thing to help me develop my game with less headches.