This is a "bug" that occurs when working with waveshapes in a multiform oscillator.
Waveshapes are quite useful since the wavetable will attempt to transitions their curves from one state to another by looking at the displacement of points and the curve parameters.
However, mulab's internal engine can inadvertently alter the wavetable when attempting to optimize the curves
In this example I use a multiform osc with two waveshapes: a square, and another square with its second point collapsed on the first, making a sort of trapezoid
when generating the wavetable, the multiform oscillator then takes into account all points, such that the waveshapes transition between one another by shifting the position of the second point
However, if a copy of this mutliform is created, the waveshapes get optimized in the copy - the second waveshape has overlapping points and so one gets deleted
What happens then is that the wavetable instead transitions the second point to the third point's position (or really to itself, since in that optimized version that would be the second point), but this means the wavetable has been altered by this optimisation and no longer reflects the intent of the original.
This happens, from what I've seen, when creating copies of a multiform osc or saving the parent mux modular, or the project (the opened instrument/project will not exhibit this behavior, but the version loaded from disk will.)
I wonder if this optimization should be handled more carefully in the context of multiforms, maybe by taking into account the number of points across the different waveshapes to decide if some should be deleted (as in, if waveshapes have the same number of points they shouldn't be optimized).
Unwanted waveshape optimization
-
- KVRer
- 18 posts since 11 Nov, 2024
You do not have the required permissions to view the files attached to this post.
- KVRAF
- 13863 posts since 24 Jun, 2008 from Europe
Thanks for reporting this case.
I agree with you that ideally such points should not be automatically deleted and have taken note about it on the wishlist.
Can't do a quick fix update atm though.
So until the fix best to use a tiny little time gap between those 'equal' points.
It can be a very small time gap, as long as it's not zero.
I agree with you that ideally such points should not be automatically deleted and have taken note about it on the wishlist.
Can't do a quick fix update atm though.
So until the fix best to use a tiny little time gap between those 'equal' points.
It can be a very small time gap, as long as it's not zero.
