Transform Logic Node lacks option to move/rotate/scale *BY* certain amount

12 July 2018 20:56
As things are now with the Transform Logic Node, even if I want to change only one value (let's say, rotate the Z axis to 123 degrees), I have to fill in all the other LocRotScale fields with the object's current values by hand. Failing to do so will result in the object moving to 0/0/0, rotating to 0/0/123 and scaling to 1/1/1. This also means that if the object's loc/rot changes while I'm working on my scene, I have to constantly adapt all these values manually in my node tree. And it means I cannot move an object by a certain amount if I don't know its current values, and even if I did, it's tedious because I have to read the value into a variable, increment the variable, and then rewrite the variable back into the node.

But with a By/To selection switch, I can do this:

Now I can set all the fields to be ignored to "by 0", so they are not changing, thus they are ignored. I don't have to fill in values or even know them. I can move/rotate objects by certain amounts, even if I don't know their current loc/rot.

I think this option would be a fundamental improvement, even more important than being able to read Loc/Rot/Scale because I can do the latter with a JS_callback, but writing my own JS_callback for "TransformBy" would be stupid, the node is already pretty good, especially that you can set durations (which principally allows animation).
16 July 2018 14:51
This is an important feature. Created a task.
Alexander (Blend4Web Team)
Please register or log in to leave a reply.