Found this image online, figured it could prove to be useful to you folks out here. It’s a collection of shaping functions. I’m not sure who the original creator is… Wasn’t sure where to post it either, I figured ‘Resources’ was my best bet.
it gives you a nice bump. Its especially useful because if x is a distance you can avoid a square root since its squared. An example of its use would be to model how much a particle is influenced by a local force.
I pretty much use these two all the time: x*x or sqrt(x). This is the same thing but bends the curve in 2 different directions. Basically, whenever I am working with shaders I have this opened and I just work on the curve until I get something that works: Function Grapher and Calculator
The first image is nice since it actually lists the math used. It’s a lot of trig functions though, which aren’t great for shaders. I love the easings site too, but it’s just showing built in animations with out the associated math function. Plus some of them are trig based again. Quadratics or other polynomial parametrics are generally better options than anything with trig (and while trig functions are often approximated with polynomials on GPUs anyway, they can be fairly complex equations on their own).
I"m new here, so if the questions are easily searchable let me know. In what context do you use these curves? Is there a node in the UE4 material editor that uses this? or am I way off base here. haha
These curves can be used in a number of ways depending on what your doing, one of the things we commonly do in shaders is use gradients or normalized scalar values (-1 to 1) to control things. These curves give us a way to control the easing on these gradients. For example you could use a simple sine wave to create and ocean wave, you could apply that sine wave gradient to one of these formulas to control the tapering on the waves and influence it’s shape.
You could also use it to control the flow and speed of shader animations. There’s quite a lot of uses depending on what your doing.
Curves are incredibly versatile and I absolutely love them. In UE4 I started down the road of defining a fixed set of curves like this. However, I decided to let the user assign an arbitrary curve in-editor (UCurveFloat). This allows me to bypass defining a function in favor of letting users draw the curve they want.