This is a bit hard to explain but I’m trying to apply a specific type of falloff to a linear range of values.
So I made this example below to describe the problem:
In geo nodes, I added a curve line with 20 points on the xy plane. I’ll like to displace it 1 unit along the z-axis, however, I do not want this displacement to be uniform on all points of the curve. So I have a mix vector node where the first input is my original position and the second is the displaced position. Then I use the spline parameter as the mix factor so at the start, the point is not displaced and at the end, there’s full displacement and then everything in-between blends appropriately in a linear fashion (since the spline parameter is a linear interpolation along the curve).
Everything so far is straightforward. Now if I wanted to apply a falloff to the setup I can just connect the spline parameter to a power node and I should have a nice curve. See image below
However, I’ll like to replace the power node with a node group that can create a unique bezier falloff similar to the video below:
I guess I’m trying to create a sort of bezier curve falloff where I can control the handle at the start and end to create any unique curve shape just like in the video above. I don’t really care about the handles moving up or down. I just want a slider to move the handles towards the right at the minimum point and towards the left at the maximum point.
For the first case you can look into the power function of the math node, it allows to bend the values in a similar fashion.
To recreate the S curves however … I bet the maths operation shouldn’t be too difficult to find…
Yeah, I already figured out the power function part. I’ve been messing around with it in combination with other maths nodes but so far nothing comes close to the s-curve shape I’m trying to go for.
I’ll check out @higgsas toolset and see if I can find something similar or maybe get an idea of how to go about it.
Thanks for this. However, this isn’t really what I’m trying to do. Sorry, I don’t think I explained it clearly enough. The nodes groups and description above is just an example created to explain what I’m trying to achieve.
I’m trying to create a node group that can take as input a linear set of values and output an S-curve-like range of values. It does not have to be specifically for a curve object. it could be applied to any field attribute and convert it to the bezier range described.