It has been a while that I did not touch this code since Menno started to work on this, but from what I see this part did not really change and should be the same as before.
Passing/returning ranges : The thing is that there is no way to know the final type of an union, and accessing inactive union member is undefined behaviour. As old plugins don't support this method the check if the result is FF_FAIL is important in Resolume Arena to check the range to { 0, 1 }. If ...
Pointer recasting in FFGL.cpp : I already had a look at your .zip and found this solution very elegant, I don't see a reason why this should not be implemented like this. Passing/returning ranges : I wanted to have a status return value and a data return value so I use this different pattern here. ...
I thought you wanted to change the value of the parameter, not the range.
So, yeah, it is not really possible at the moment, as Arena add the parameter before calling initGL, and we don'thave a way to push parameter range change to the host right now.
InitGL function : https://github.com/resolume/ffgl/blob/master/source/lib/ffgl/FFGLPluginSDK.h#L59 Every plugin should have a variable named currentViewport that contains texture info after InitGL is called by the host. Even if you create your parameter in the constructor and you still don't have th...