Move components independently from the parent Pawn

I have a pawn with a static mesh and a camera attached to it. I want to be able to move the mesh independently from the pawn itself. This works for the camera, since it somehow becomes a child to the static mesh without me explicitly telling it so. So I can move around and adjust the camera without moving the Pawn, but I can’t do the same with the static mesh. Is there a way to get around this? Can I make some sort of null-object to attach the mesh component to?
I want a hierarchy that is something like this:

Pawn
|-StaticMesh
  |-Camera

I also want to be able to adjust the position of the mesh and the camera during gameplay, but the camera should always follow the mesh.
So how do I make the static mesh’s position independent from the Pawn’s position?

I’ve tried adding another StaticMeshComponent to the hierarchy but leving it empty and that works, but seems like a strange solution. The hierarchy now looks like this:

Pawn
|-StaticMesh (empty, no mesh assigned)
  |-StaticMesh (the actual mesh to be rendered)
    |-Camera

Am I wrong in thinking that the class Pawn itself has coordinates in the world? It should have, shouldn’t is, since you can place and empty pawn in the scene, i.e. one that doesn’t have any components added yet.

Is there a better way of doing this? Is there something like an NULL-object, or Locator or empty group as you would do it in Maya, or a Dummy object or Point Helper Object as it’s called in 3ds Max?

You can use USceneComponent as a dummy component.

What you could also probably do is to is use the relative offset functionality instead of specific world coordinates. You should be able to calculate one from the other in any case, based on the Pawn’s world location.

I’ll try the USceneComponent :slight_smile:

The problem with the other method is that the mesh becomes the base object in the hierarchy, so even if I offset it, it will move the base pivot as well.

Using the USceneComponent worked! Thanks! :slight_smile: