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?
metaballs time problem
Re: metaballs time problem
Float(signal) --> Accumulate --> Metaballs.
This is how I frequently make an "ever increasing"-value
This is how I frequently make an "ever increasing"-value
Re: metaballs time problem
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.
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.
-
- Team Resolume
- Posts: 233
- Joined: Fri Dec 06, 2019 00:01
Re: metaballs time problem
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
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--
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
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 :
Re: metaballs time problem
We should really make a node that does this - This is not a solution a non-developer would come up with