• News

• Industries

• Learning & Support

• Community

• Marketplace

# Help with rotation problem of parent/child actors

Hello,

A rotation related problem/question.
I’m sure this could be fundamentally simple but I obviously lack the needed knowledge to solve it.
Hope someone could help me understand.

My goal is to know: how to rotate a child actor by just rotating its parent so that the child actor will be rotated to match the parent actor’s current rotation.
I can do it if its only one axis, but if the child actor has rotation offset on 2 or 3 axis, I could not find a way to calculate the right value to feed to the parent actor.
I have tried nodes like CombineRotation, DeltaRotation, etc, but have no luck.

Here is an example to illustrate what I mean:

Setup
Here I have 2 chairs with the same location and rotation,
They are paired so the yellow chair is the parent and the blue chair is the child.

Scenario 1
First: the child blue chair is rotated on one axis: Z = 90

I can apply the negative value of the rotation on the yellow parent chair: Z = -90
So that the blue child chair is ‘reset’ back to the old position, as I needed.

Scenario 2
The blue child chair is rotated on 2 axis: X = 60, Z = 50

Simply using the negative value from the child chair’s rotation does not work, as shown below
How do I calculate the values to put on the parent chair?

I hope I made myself clear.
If not, please let me know.

Thanks for your time and help.

I’m not very good with vectors, there is no doubt a fancy way of doing this in BP. For the time begin, it works fine if you swap the parenting and rotate child back to zero

This is it in blueprints, it’s to do with composing local and world transforms, with an invert transform thrown in for good measure:

Thanks a lot.
This works for me beautifully.