AnnulusGames / LitMotion

Lightning-fast and Zero Allocation Tween Library for Unity.
https://annulusgames.github.io/LitMotion/
MIT License
841 stars 66 forks source link

LITMOTION seems to be closer to the bottom of the animation mechanism than other TWEEN interfaces? #133

Open Container-Zero opened 2 months ago

Container-Zero commented 2 months ago

Hello,

I’ve noticed that LitMotion seems to operate closer to the core mechanics of animation compared to other Tween libraries.

For instance, while LitMotion provides excellent performance, it appears to come at the cost of increased complexity during development.

In other Tween libraries, when I want to move an object, I can simply set the target position, and the system automatically uses the current position as the starting point. However, in LitMotion, the starting point seems to be mandatory, which means I need to use something like transform.localPosition every time as the starting point for the animation.

Additionally, if an animation is triggered before a previous one finishes, I expect the new animation to automatically override the previous one. Other Tween libraries handle this automatically, but in LitMotion, I have to manually manage this process by using handles.Cancel() to stop the previous animation before starting a new one. Otherwise, multiple animations get stacked, causing erratic movement.

Combining both scenarios, if I want an object to always start moving from its current position and automatically transition to new animations, it seems that I end up writing more code compared to other libraries. The need to set and manage additional parameters increases the code's complexity, especially in environments with intricate movements.

From this perspective, the development complexity seems to increase, particularly in more complex motion scenarios. The manual management of these variables can lead to code that feels heavier compared to what I would write in libraries like LeanTween or PrimeTween.

I’m not sure if I’m understanding this correctly, so I’d really appreciate your guidance on this matter.

Thank you so much for your time!