Matrix Modulation System - Last Call for bugs fixes & changes!!
-
@Christoph-Hart the hover popup / permanent 'dragger' will show the intensity rather than the range, would it not? It would be nice if the ring could show either the accumulated range or selected range.
-
@DanH but in all the examples you showed the mod dragger also shows the intensity range not the mod value, no?

This shows a bipolar mod range for this given mod, just like the other examples.
-
@Christoph-Hart we might be describing the same thing, yeah. Ring around knob = modulation range. Popup = intensity range / amount.
If Ring around knob could show either accumulated range or selected source range, that would be ideal.
So we'd perhaps need some more objects other than obj.modMinValue / MaxValue like obj.modMinValueSelectedSource or something....
-
-
Currently it's like this (or it's supposed to be like this minus a few glitches):
I'm referring to the default LAF seen below, but all that can be customized
grey ring around knob = modulation range of all connections combined. This factors in all intensities and applies them correctly using their respective mode.
bluish ring around knob = current modulation value (not present here as there is no voice currently but you get the point)
purple ring around popup slider (the big thin ring on the bottom) = modulation range of the current selectionI don't think you need to switch the display on the knob between the modulation of the selected source, as this is covered by the (now permanent) hover popup.
-
@Christoph-Hart Ah now I understand yes that might make sense.
So basically would could happen is that we use some kind of "solo" mode for the modulation ring display around the knob:
- if a exlusive source is selected, then it will show the modulation for the given source only
- if no exclusive source is selected, then it will show the entire modulation
For this to work you need to be able to untick the exclusive source, but I've added that anyways to the matrix draggers now.
I'll post an video to show how this would work...
-
Ideally the ring around the knob shows the accumulated mod value while the hover popup shows the range for the selected source.
Well it shouldn’t be a straight accumulation (aka addition) because a positive value can compensate a negative one perfectly, drawing no arc at all, while the modulation actually moves following the combined value
The range should instead cover from the lowest min to the highest max
-
Alright, so now it looks like this:

- When you select any source, it will show persistently only the draggers for each target that is associated with the source without hovering / exiting.
- The modulation display will switch from showing the entire range & value to the currently selected source
- Click on the selected source to switch back to showing the entire modulation value.
This mode is only engaged once you define a function for the
setExclusiveSourceCallback()method of the script matrix so the default behaviour won't change. -
Well it shouldn’t be a straight accumulation (aka addition) because a positive value can compensate a negative one perfectly, drawing no arc at all, while the modulation actually moves following the combined value
The range display covers the min max value while the modulation value combines it.
If you have two modulators, one set to -25% intensity, the other to 25% intensity (both in unipolar mode), and the value is at 50% position, then the modulation range will cover 25% to 75%. If both modulators crank out 1.0 as mod value, then the modulation value will sit right in the middle where the value is supposed to be.
That being said there might be a few edge cases and combination of modes & intensity where the math doesn't math, but in general that should already be the case.
-
@Christoph-Hart look forward to testing asap :) Thank you!
-
@DanH It's pushed now.
You can just load the exlusive mod snippet posted above, the changes should apply without modifications (I assume nobody is using this feature in a product yet so I don't care about backwards compatibility).
