I'm putting the finishing touches on an experimental plugin and was just wondering how I can assign the Vector Joystick to manipulate parameters already in the plugin.
For example, if I wanted to assign the X - Axis (or ACMix as it's listed) to control the Pan parameter (which has values from -1 to +1), how would I link them up? I've read that the Mix parts of the function spit out a value of 0 ---> 1, I'm just not sure how to make use of that info.
The joystick is one of the only controls that does not link directly to an underlying variable in your plugin (the only other controls that behave the same way are the assignable buttons, B1 - B3).
The joystick delivers its control change information to:
joystickControlChange(float fControlA, float fControlB, float fControlC, float fControlD, float fACMix, float fBDMix);
And, yes the AC and BD mix variables are 0 --> 1; in order to map them to a variable, you need to convert the unipolar value to the range of values you need for your control. The easiest way to do this is to call the built-in helper function (from pluginconstants.h)
inline float calcDisplayVariable(float fMin, float fMax, float fVar)
This function converts a normalized (0 -> 1) value in fVar to a mapped value for your control, You supply the fMin and fMax values for your particular control, in this case it would be fMin = -1 and fMax = +1
Perhaps a simpler option would be to use the Trackpad (aka XYPad) in the GUI Designer. You can select the two variables to map to X and Y and the conversion is all done automatically for you.
The Vector Joystick is really there for synthesis plugins that want to incorporate vector mixing from the Korg Wavestation and Sequential Circuits Prophet VS family of synths.
I'm an idiot for not trying that in the first place, worked like a charm. Thanks Will!
I have one final question while we're on the subject. Is it possible to import a custom image for the XY Pad, or to change the Background and Puck to images outside RackAFX? I've rendered a custom grid and would really like to use it instead of the current scheme that's in place.
Most Users Ever Online: 152
Currently Browsing this Page:
Guest Posters: 1
Moderators: W Pirkle: 690