Opinions Please! Change all 3D actor 'rotation' inputs to MIN/MAX?
mark last edited by mark
In answering this question about "inverse kinematics" and in other situations I've encountered, I realized that we should consider changing the limits on all 'rotation' inputs on the 3D actors.
Right now, most 3D actors have an absolute minimum of -360° and an absolute maxmium +360°. For sure, this should be changed to MIN and MAX because sometimes you simply don't want to scale those inputs. This has no downsides in terms of affecting older patches and in terms of creating bugs, since the sin/cos and OpenGL functions used with those values will work just as well with values outside of the range -360/+360.
But what is your opionion on the default 'scale min' and 'scale max', which currently also default to -360° and +360°?
The reason not to do change the scale min and scale max is because, with this setting, hooking up a Wave Generator or an Envelope Generator or Mouse Watcher that goes from 0 to 100 will be automatically scaled to -360°to +360°-- something that is really good for the more novice user. If the scale min and scale max were MIN and MAX, connecting those actors would give you a rotation of 0° to 100° because no automatic scaling would take place.
Yet I also know that it's a pain to go in and set those six inputs individually to MIN and MAX if you are not a more novice user.
I think the scaling should be done using the Limit-Scale value, which is more consistent with having clear and distinct actor nodes for each function. In my opinion, I would do away with scale min and scale max options as they are hidden options and they often have unintended and invisible effects on what they do. I recommend my students to be wary of the scale min max options.
maybe the intern scale min max values can bring on the actor outer actor side if we want this, than they are not "so far out of view" and people lik we can´t forget them if anything is not working because of playing with them.
that´s why we also prefer the limit scale actor.
@mark, what a great idea and lovely to see the 3D modules get some attention!
In my approach, I am using using octants to indicate how a particular angle will be scaled, so I am leaving all 3D Players rotation limits to -360 to 360 and using different Limit-Scale actors to set min and max. I am not sure if this is a typical or good approach, but I am making some progress with it. see attached example.
I agree the Maximum and Minimum should be Min Max in the same ways as Z translate.
The Scale Min and Scale Max can remain as -360 and 360.
The use case you just went thru is for very advanced users for sure!
And as you have said, for anyone new trying it, having a meaningful range defined by default will help.
My concern is more with the level of visibility of these 'hidden' input settings.
I know we have talked a fair bit about this issue and a few UI changes have been suggested to make it easier to visually see where scaling is happening, but making the current values more visually obvious would also be cool. However, this is something we need to discuss deeply.
The built in scaling is great, and can make things very fast.(compared to always adding 'limit scale value')
But adding 'limit scale value' happens to be my go-to method.. since it makes editing/understanding the patch months later much easier.
If we could see where scaling is occurring and easily see the From->To of the scaling it would go a long way to making this feature safer to use/rely on.