0
$\begingroup$

I'm having this bizarre issue that I can't figure out how to fix.

I have learned that noise modifiers have a max range of 1 unit peak to peak (multiplied by strength), however, the generated waveform can pass through those range limits, and will be clamped to the range of the type (subtract is -1 to 0, replace is -0.5 to 0.5, add is 0 to 1) Around frame 420 is a good example of the clamping, which I believe is happening at multiple other peaks given the shape of the baked keyframes.

Because of this, and possibly a few other issues, the movement of the models in the scene I'm working in is weird and stuttery, it stops, starts, and jumps around a bit.

I have tried moving the f-curves in the y-axis, changing the strength of the modifiers, and increasing the scale of the modifiers, all of which make the stutter somewhat less noticeable, but do not fix the issue, and hinder the movement's original intent. I have also changed the phase, however, that only moves the issue around, and as the project I'm working on is ~2 minutes long, finding phases that don't clamp themselves over 2880 frames is not feasible for me.

A set of F-Curves, with one of the peaks on the right noticeably clamped The same set of F-Curves, baked to -1 to 1, showing several peaks touching the range limits

Link to example blend file

Link to viewport render showing the issue

$\endgroup$
1
  • $\begingroup$ if my answer doesn't help pls provide your blend file because you didn't show us the important information of your lower graph. $\endgroup$
    – Chris
    Commented Jun 27 at 8:00

2 Answers 2

0
$\begingroup$

Changing the strength of the noise modifier changes its amplitude. At default strength 1.0:

enter image description here

The noise ranges from -0.5 to 0.5 (but tends to 0 because it is a normal distribution, not an even distribution; and we're unlikely to see peaks at any particular frame at this "scale" which might better be considered "frequency".) And we can see that our cube is at X = 0.077.

At an edited strength of 10.0, the amplitude is multiplied tenfold:

enter image description here

The noise now ranges from -5 to +5, and we can see that echoed in the position of our cube, which is now at 0.766-- ten times the displacement the noise originally provided.

weird and stuttery, it stops, starts, and jumps around a bit... I have tried ... changing the strength of the modifiers

Noise stops, starts, and stutters. That's what noise does. It does not behave predictably or smoothly. You may not want noise. Or, possibly, you may want to change the scale of the noise, which changes the frequency of the noise-- scaling it out along the graph editor's x/time axis, rather than changing the amplitude of the noise-- which makes it less noisy. It's still noise, it just doesn't stutter as frequently, and the waveform that you see will be represented more closely in the few frames that you actually render. (Consider that from peak to trough in your pics is usually taking less than a 10th of a second, assuming 30 frames per second, represented by a mere 3 frames of rendered, visual data. So, you've got noise that is vibrating almost fast enough to be audible.)

$\endgroup$
5
  • $\begingroup$ The problem isn't the noise scale or amplitude, it's the range, and more precisely, when the waveform leaves it. The noise settings create the exact speed and feel of motion I want (Consider watching the attached video). Look at the negative spike on the right, it hits -0.05, then there is this 10-ish frame flat spot. The shape of the curve implies that the peak has been cut off. This seems to happen several times to various degrees (again, I would suggest watching the attached video). Also, I know it's hard to see, the the section is from frame 1 to 480 at 24fps, peak to trough is ~20 frames. $\endgroup$ Commented Jun 28 at 1:17
  • $\begingroup$ @SomeSnowLeopard The amplitude is the range you're talking about. Remember, you are sampling your noise. You are not getting its shape between frames, only at the frames. And that can make the peaks appear "cut off." I have watched your video-- it looks like a noise modifier looks. I'm not sure what it is that you want instead. $\endgroup$
    – Nathan
    Commented Jun 28 at 3:03
  • $\begingroup$ The range I am talking about is not the amplitude. I could set the strength to 100, and the negative spike on the right would still be clamped, just at -50 instead of -0.05. I have used noise modifiers a fair bit, and I have never seen one do what this does at 0:17. If you look at the waveform, it is obvious that something is wrong with that negative peak on the right. That looks as if a large portion of the wave has been clamped to the max range of the noise. For some reason, the noise function generated a waveform that left the prescribed -0.5 to 0.5 x strength range. $\endgroup$ Commented Jun 28 at 4:11
  • $\begingroup$ @SomeSnowLeopard Looking at your file, and focusing on frames around 425, I see the clamping. (You might consider adding the info to your question if you want an opinion from somebody else-- but, that's probably unlikely anyways.) The issue is with the "phase" parameter, which creates an amplitude outside of the range for the strength. It shouldn't. The documentation (manual) for phase currently states that it changes the random seed for the noise, but it's clear that's not happening. (I believe it used to be the case, but apparently, not anymore.) I would consider this a reportable bug. $\endgroup$
    – Nathan
    Commented Jun 28 at 4:47
  • $\begingroup$ @SomeSnowLeopard And, if you're just looking for a fix, don't change the phase so much. Yes, that will change your noise. But the phase changes are what are creating noise outside the range. If you report the bug, and you get some crap (maybe because of difficulty communicating the problem), please feel free to get my attention on the bug report and I'll chime in. $\endgroup$
    – Nathan
    Commented Jun 28 at 4:50
0
$\begingroup$

This behavior is indeed a bug, and has been confirmed as such https://projects.blender.org/blender/blender/issues/123875#issuecomment-1226465

So, I guess the fix is to wait until it's patched

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .