Seamless transition from frequencies of wave modifier? Or otherwise, shape keys?

I’m using 2.79 (will never use 2.80 or above unless they bring back the 2.79 interface) and I thought I could gradually change the frequency of waves in the wave modifier by keyframing the “speed” value, but apparently that produces weird results, is there a proper way to do it?

I would use keyframes, but as far as I know, there’s no way to create multiple animation points within a keyframe, I can’t add one part of a wave at 0.25 and then another part at 0.5, it forces me to only keyframe at 1.00 or nothing at all.

Your basic sine wave is in the format of kSin(lx+m) where k is amplitude, x is time (frame), l is frequency, and m is offset. You can make a driver that scales frequency just by plugging x into l: kSin(x^2+m), for example.

Frequencies really need to be evaluated continuously like this, or over the period of a complete wave (which is more complicated) because changing the frequency also changes the offset-- switching from one frequency to another can lead to a large, discontinuous change in the output, even if the change in frequency is small (at large values for time.) The way around that is to build your entire waveform bit by bit-- every time you figure out a new frequency, you need to figure out a new offset that depends on your previous frequency and offset.

Lerping doesn’t usually give what people want, because of wave interference, but if you want, you don’t need a driver to lerp, just use multiple additive modifiers and set restricted frame range for fade in/out.

1 Like

None of that really helped me as I tried building it bit by bit. What I do for the time being is create a shape key for every single edge loop and then animate them, but like I said, that could be made more efficient if there was a way to edit a single shape key at different values.

I probably misunderstood you. I thought you were talking about keyframe modifiers, but you were probably talking about mesh modifiers. Apologies.

Well I am talking about keyframes, idk what a keyframe “modifier” is though.

Open a graph editor with a keyframed whatever, open a sidebar view on the graph editor, check out the modifiers tab.

Oh then yeah I know what those are, but they don’t help with the frequency issue.