Smooth with easing

 

Hi there.


I really love the Smooth module that allows one to make simple on/off switches into ...well... smooth motions, transitions, fades, you name it.

It would be much cooler though if it would sport an extra dropdown control (*)
which allows to select from various easing equations for both start and end.
(e.g. as shown on https://easings.net and other sites dealing with animations)

This would make fast and efficient MoGraph animations a breeze...:-)

Cheers & all the best.

Eric.

(*) or rather two of them with an option to lock them together.

   EricWest

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

Making animation quickly is always nice.
The Curve module has similar capabilities as your suggestion. You can use it in tandem with Smooth. For example:

If it doesn't satisfy you, feel free to make recommendations, we are always happy to hear ideas, suggestions, feedback...

Warmest regards,

 
Profile Image
EricWest
  -  

Hi Eifert.

Thanks for that tip. It never occured to me to use Smooth & Curve in tandem.
(See my other post here: https://my.aximmetry.com/post/1623-accessing-individual-members-of-instance?commentId=5345)

I was blown away when I found out that Axim's Smooth Vector even handles an array of 100+ 3D Vectors like a charme.
Good onya folks! Aximmetry rocks!...:-)

In terms of suggestions, why not put those different easing equations into the Curve module?
(Or make it a module of it's own, handling all types of values like vectors e.g....:-))

Cheers & all the best.

 
Profile Image
EricWest
  -  

PS: Curve doesn't seem to work with Smooth Vector, though....:-/

 
Profile Image
Eifert@Aximmetry
  -  

Hi Eric,

You can think of vectors as arrays in Aximmetry. There are some vector modules in Aximmetry that you would usually find as functions for arrays in other software or programming languages.

The Curve module works with scalar values only. So if you connect a vector to it, it will only process the first value/item in the vector. You probably want to use a Vector Split module and put a Curve module on each output pin value.
Or, you use out the array nature of the vector, and you setup array from a compound like this:


After that you can make the following:

And inside of the Compound X3:

This will apply the Curve inside the compound for each item in the vector. Though only up to 3 items, cause I specified 3 items size when setting up the array compound.
I don't see this being needed for everyday use, but since you are instancing objects in your other post, you might want to use array compounds in that case.


I guess there could be some preset of curves (easing equation) in the curves module to choose from. Also, the ability to save new presets there could be useful.

Warmest regards,

 
Profile Image
EricWest
  -  

Hi Eifert.


Thanks for the tip!

In out case we're dealing with an array of about 60 - 100 values though, which would make the above solution a bit tricky to handle, I guess.

As said before, SmoothVector handles it like a charme, just missing those easing functions...:-)

Thanks again!


Eric.