To rotate your object on a specific local axis, you can do the following:
- First, convert your object into an instance (if it does not already exist as an instance).
- Then rotate the instance with
Rotate Instances
time-controlled on the Z-axis in the local space. - Then rotate the instance in global space by the value $22.5°$.
Note: When you plug a value into the socket Rotation, the node expects the rotation in radians, and not in degrees!
PS: Of course you could also work with the node Transform
, but for me the example using the instances seemed easier, because you can easily select the local or global space.
Why does this not work as expected in your example?
Your screenshot shows a particularly unfavorable situation:
- First you double the seconds. This is a float value. So let's assume for second $1$ that this value is then $2$.
- Then you put this float value into a vector input, which automatically leads to the value $(2,2,2)$. But since the input is a Rotation, and angles in radians are expected here, this means a rotation of $114.598°$ per axis per second.
- In addition,
Rotate Euler
does not actually work here, because no rotation axis has been specified. - Then, by putting the rotation into a float input of
Combine XYZ
, you convert it back into a float value. And in doing so, the value is divided by $3$ again.
That's the reason why you don't get a usable rotation at the end here.