How can i recreate viewmodel bobbing like this?

how could i recreate viewmodel bobbing that looks like this? i know it probably uses math.sin and math.cos (and i know how to use them) but i dont know how to apply them correctly to make this Watch 2024-12-14 22-06-20 | Streamable

It’s probably a sine wave that increases exponentially depending on the speed of the character.

I would use Lerping and a sine wave that increases exponentially by the players speed, and animate it when the player moves with MoveDirection.Magnitude

i know that but what im trying to aim for is to make the movement look more human compared to what i get, which looks like this:

it’s most likely animated instead of being procedurally generated

I doubt that and doing that for every single tool in my fps framework would be incredibly time consuming

I experimented a lot with view models few weeks ago and i found out that animation by roblox is best way for few things, especially for movement & aiming visuals (ADS looks bad with only camera cframe change), you should use animations to do that, it’s more flexible and you can control what player does, instead of math doing it for you

Like I said above, I’d like to not have to animate the same walk cycle for every tool in my game

Only walk? also you can reuse your animations for multiple weapons, if you really don’t want to use animations, use sin and cosine to form line function f(x) = x

you can play around with trig functions, but i think animating walk cycles manually is simpler