Just to add a few extra tidbits of info -
It works fine as is but the way we implemented the VST hosting is such that the developer of the VST can take full control of the entire screen and all the buttons and encoders (except the 4 menu buttons).
The way this works is by implementing the 22 parameters (nr 0-21) that represent the 4 encoder values, 4 encoder buttons, 8 softkeys, 4 cursor keys and 2 shift keys. This has to be done on the side of the VST plugin by the VST developer.
Normally with VST plugins in a DAW you’d get an additional GUI through which you control the VST’s parameters (apart from the VST GUI itself). For example in ableton live the parameters are exposed outside the VST plugin. However that is ableton live, and the SSP is not a DAW. We want the SSP to be as quick, smooth and easy to use, so that is why we decided to avoid putting in an extra layer of control/mapping, and let the VST developer control the entire experience once the VST plugin has been loaded.This means the VST developer can completely customize the UI (since it is fullscreen) but can also customize encoder step size and acceleration since he or she gets the raw data from our software.
Imagine we did put in that extra layer of control or mapping. You would then have to go into the VST module and manually configure what inputs go to which VST parameters for modulation, and the VST parameters would be spread across a lot of pages (some VST plugins have 100s of parameters). That would not be a great experience IMHO and it would require you to do one additional step of mapping nobody wants.
Of course the consequence of this is that off the shelf VST plugins might not work without some minor tweaking. But that is unavoidable.
Most VST plugins have fixed size user interfaces. For example they hardcoded the UI to be 640x480. Obviously we now have moved on, this is 2018 and not 1998, so user interfaces can now use vector graphics and be dynamically resizable. If everyone in VST land made their user interfaces scalable on the fly then all of this wouldn’t be an issue