Well, the original concept for GigPerformer (as I understand it) was that a “Rackspace” was intended to be whatever combination of plugins, plugin parameters, and routing to produce some particular sound. Very much like the equivalent of a Preset in something like Helix Native, but involving multiple plugins, complex routing, etc.
Widgets were a mechanism for adjusting specific parameters (e.g., delay time, chorus on/off) in real time, like the knobs and switches of a stomp pedal or drawbars on a Hammond B3 organ VST.
Variations were a mechanism to store “snapshots” of a Rackspace that would have all the same underlying plugins and routing, except the widgets would be in different positions. So one variation with Chorus on, one with Chorus off. The more Widgets you have controlling parameters, the more Variations you might want to make.
Because GP was entirely built for performing live, the mental model was more or less “if you want a different sound (for a different song or different part of a song) then create a different Rackspace.”
This thing you’re asking about, where you might want to bypass and unbypass things on the fly, can be accomplished in a few different ways. There is not one “best” approach.
One approach a lot of people use is having a Widget that toggles the Bypass of a VST. A common downside to that is some VSTs will effectively freeze their internal state when you do that. So let’s say it’s a reverb with a 6 second tail. You hit your chord, and then 2 seconds later you bypass your reverb. A few minutes later you un-bypass your reverb. Is it going to play back the 4 seconds of reverb tail from when you bypassed it, or does it purge that buffer and start fresh?
Effects plugins generally have their own on/off parameters, so you’d typically shut them off (like stepping on the pedal) rather than bypassing them.
This same thing also applies to instrument VSTs. If it’s MIDI based and you’re holding a note when you bypass it, the plugin is “frozen” while bypassed. So if you release the note while it’s bypassed it doesn’t know it. So when you unbypass it you may have stuck notes playing.
One approach is to run instrument plugins through a mixer plugin and just mute the appropriate channels on the mixer. The VST keeps doing its thing, but its output is muted at the mixer. Another approach is to block the VST from receiving input (either midi note-on events or analog signal). That way it will continue sounding whatever it was doing (e.g., the reverb tail or a chord played on a keyboard) but make no further sound after that finishes.
It really depends on the plugin and what you’re trying to do.
On most of my PCs I have way more processing power and RAM than I’m going to need, so I almost never bypass plugins. I’ll either mute them at a mixer or block incoming midi notes.
I’m not sure where it’s documented, but when you run multiple instances of GP at the same time each one will have its own “identity”. If you don’t name them in advance you won’t necessarily know what’s what.
On Windows you’d create a shortcut with a “target” something like
"C:\Program Files\Gig Performer 5\GigPerformer5.exe" -in="Guitar"
The “-in” part indicates the instance name. On systems where I run multiple instances I’ll have different desktop shortcuts for “Guitar”, “Keys”, and “Drums”. When you name instances like that, each instance name will remember all of its own settings, including what Gigfile to open, which midi devices to enable, etc.
In my case, my Keys instance is always going to have exclusive access to my keyboard midi ports, and my MC8 Pro is only going to talk to my Guitar rig. My vdrums are only going to be seen by the Drums instance.
You might initially think, “who cares” but it can definitely make your life easier, especially on windows (where most midi drivers can only talk to one application at a time, and different instances are different applications).
Like I said before, it’s not all that complicated once you understand how things work. But there are a lot of moving parts. The GP forums are among the best around as far as developer and real world support go. (As is this forum.)