JWildfireSwan · published · build 19904071
I now added the option to modulate motion-curves by numeric formulas in realtime. This may be used to add certain features on top of an existing motion-curve or generate the whole curve in an algorithmic way.
You can use any GDScript expression here that evaluates to a floating point number.
Available parameters: time_value, curve_value, frame, fps, bpm, offset, amp, freq, phase, pulse_width.
The <bpm> parameter is derived from the bpm-motion-curve of the flame and may be dynamic.
For simplicity, the following predefined functions (which do not require any arguments) are available:
sine(), cosine(), square(), sawtooth(), triangle(), noise(), gaussian(), sample_and_hold().
The modulation takes place on top of the looped curve, so you may see upto three curves (per motion curve) in the editor: normal curve, looped curve, modulated looped curve
Thanks Nicolas for the suggestion!
Now, I haved planned one more little feature, and then release 1.0 should come very soon!
Complete changelog:
VERSION 0.119.1322 (09.09.2025):
- added the option to modulate motion-curves by numeric formulas in realtime.
This may be uses to add certain features on top of an existing motion-curve or
generate the whole curve in an algorithmic way.
You can use any GDScript expression here that evaluates to a floating point number.
List of available parameters:
time_value, curve_value, frame, fps, bpm, offset, amp, freq, phase, pulse_width\
The <bpm> parameter is derived from the bpm-motion-curve of the flame and may be dynamic.
For simplicity, the following predefined functions (which do not require any arguments) are available:
sine(), cosine(), square(), sawtooth, triangle(), noise(), gaussian(), sample_and_hold().
You can specify an optional argument that amplifies the frequency.
For conditional expressions, use the syntax:
(<expression>) if (<boolean_expression>) else (<other_expression>).
The modulation takes place on top of the looped curve, so you may see upto
three curves (per motion curve) in the editor: normal curve, looped curve, modulated looped curve
Inspired by: https://gemini.google.com/share/4bf5ed4c2bb5 and https://claude.ai/public/artifacts/8c02d4f0-1c95-49d3-87ec-cfeb501ed866
Thanks Nicolas for the suggestion! (SWAN-145)
- motion-curve-editor: also show the current y-value
- fixed a bug in the undo-manager related to undo-ing a group of changes
- motion-curve-editor: added "play"- and "play from start"-buttons for animation preview
- fixed: avoid file-dialogs to open twice (at the same time) (SWAN-147)