Static meshes do not move when parented under Scene component

Hi,

I’ve been struggling with something completely trivial for half a day now. I can not comprehend why I can not move my pawn actor when the root of the actor is a scene component, but I can move my actor when the root of the actor is a static mesh component.

I am using Movement Component to get basic movement logic, and Add Movement Input function to actually move the pawn.

When the Scene component (I tried also arrow component, it behaved exactly the same) is a root of my actor, then when I start the game, only the invisible Scene component moves (I can tell because the camera looks at it), but all the static meshes, which are clearly parented to it remain at the player start position.

When I take Tank_Body static mesh, and make it a root, then everything works.

The problem here is that I need a Scene component, because I need the bottom of the tank treads to be at 0 on the Z axis, but it’s not possible to translate root component, so root component has to be something else.

I can not understand what am I doing wrong, this should work. If there is any special exception for some components, which causes any child components to not inherit its position, how am I supposed to know that? It’s probably not documented anywhere, and even after an hour of googling, I have not found an answer.

Here’s also a video:

Thank you in advance.

1 Like

And I’ve figured it out again. I was spoiled by DCC packages, where choice between relative and world transform mode usually just changes the method of inputting the coordinates, not an actual behavior of the transform in relation to hierarchy, like in UE4. It was this switch:

I know this is a hyper-necro but really glad to have found out about this setting. I was trying to set a static mesh component in the pawn to absolute location and had no idea where this was.