Page 1 of 1

metaballs time problem

Posted: Tue May 14, 2024 12:07
by mowgli
The metaballs example uses a saw oscillator into the Time input to animate the balls. This causes a jerk in the motion every time the oscillator reaches its peak and drops again.
I'm trying to avoid this jerk in the animation so that the balls animate smoothly forever. I've tried the different oscillator types to no avail as they range between positive and negative values causing the animation to rewind.
What would be the best way to achieve what I want?
I'm guessing that system time with some sort of interpolation maybe?

Re: metaballs time problem

Posted: Tue May 14, 2024 12:35
by MarkyMark
Float(signal) --> Accumulate --> Metaballs.

This is how I frequently make an "ever increasing"-value

Re: metaballs time problem

Posted: Tue May 14, 2024 13:25
by mowgli
Thanks.
which signal would you use into the float?

Also, I'm trying to figure out what the relationship between Speed and Time is in metaballs.

Re: metaballs time problem

Posted: Tue May 14, 2024 17:07
by tijnisfijn
You can use any time or oscillator or metronome node. I mostly use transport time, but you could use a metronome and use the phase output for instance. About the timing I can't help you there. Sorry I have no idea.

Re: metaballs time problem

Posted: Wed May 15, 2024 14:00
by MarkyMark
The Metronome Phase won't work since its a 0-1 value.
What Mowgli needs is a value that infinitely increases.
The accumulate does that and so does Transport Time.

Transport Time will be linked to the BPM
Accumulate will be linked to whatever float value you put into in.

Something like float(0.01) --> accumulate should do the trick.
This means your time value increases by 0.01 per frame as the value is accumulated at signal flow.

--begin-wire-patch--
966.3ocsV0zaaiCD8+BOKEPpukuY6DCzCs6kEaOTXDPIQYycoI8RR4Vmf7euCEUrkq+pcwVEfHR52LjyLu2H9JpVIkrZKWIMnIe4UTqVsAFfCPpN61NKFsL.YUvRj.DW5W4sfC.ImCLFdy2v.XKGL4OzMLM7Kv7MLKEM4UDsytVAqgPAnZpksRo2ilH6Dh.TCaqPseCSZ+SpdEy5vWoox50.97GHkOfAqjTXOlf9LWyfY6XZCDDNnan+syy4vlwktQjh.zVp0YN9s2b92Tq4as83cGfFtYqft+SdOBKvafMm2xcmZDtnMsjkUGVgSxBSvsrvh135vjxxz3JRZaaVCXifWyjF1BtXvICKbzqanbgejRyWwkTw+SwW4ow2+1QEbKjNiiJRyBPZlQI5rClulwWsF1SBt.pxek2XW6bQDFrzP2w98blrq61TIOj.5zCC1wjMdd..Rx9l8SpF1GZPSRfovPiy63dFi0p4UcV+RMrVZmv9WTQGKzteKysn+s+E3Z2uAScjJm2aEpuNBU+zinL7UPAwgyyxuiSAqoVOZiERS9S0.VtDHz.24.bhKETo5jMlwkfzhQEfz.z2fvNAjOtRWQFXRsfZ5sf23JC4Yk4QYogOU9DILY1z4gk4IQgvROkFgymRvwiKKQ8dPU+Ofs6.Jsxo0Th9zcK7jQw39k5CAqei7R7SRSPfdHRvOfwk9G33jTDkV3hs07FPx.R72SqGSKmlPCtPka4Ah0hgM6.a44cbCuxonr5NFrQjyoB+h00Fn2jz3a3cqJ1uJQv.L4mUxmA0lW9LfuRoDGw2REF1kYCw3yXCYok2mMDkimElj83igyJdBGVLsHJd9BRFY17e6rg256tbR7BklUmjJc5uqvQFyKNu77tu+wb6Q9xz55tMcB36G2jzDeNoohagOy3x0WmCf+4k2iaxFRq5Gx9w7VzQK9hqgafqE7xSscCzy6dmoQv0LH346t8VEPVdYFWTdxYTthxehFP3nRnAzh4IgylOmDNiLcwij3rEo37wTt3+CTtpUy8HNMfRFEP3f9+bYNnJKatW9pZ+1gn3FRxCmrquuPhLnOY1eigdZwsZTl59lS2KurWxNY2OCHA6eHIkXBnacJ0UZ9MiKGlsJC+8upesh+PdRSa3cl6cZM7WtYDk4OmQwEIjhz7RGu2rkwZttQNH82F7F8PNo2vPw58R64hiKy+ur.L3nNerT9XCjOBWGshJDlaz+XPw0o8cAfocbW3TCtP2eYVP1f6EMv+eQ4tWbelgI72r1EVNdNA4ZEAZwuivEcZV
--end-wire-patch--

Re: metaballs time problem

Posted: Fri May 17, 2024 18:37
by flyingrub
You do not want to increase with the same fixed value each frame, because then if you run at 200 fps it will go faster than if you run at 30 fps. You want to have something time dependent. This works quite well and allow you to have a speed parameter too :
photo_2024-05-17_19-36-00.jpg

Re: metaballs time problem

Posted: Tue May 21, 2024 15:06
by MarkyMark
We should really make a node that does this - This is not a solution a non-developer would come up with :lol: