Having the camera in an entity's first person view

I would like to have my camera follow the first-person view of a moving entity. I do not believe that “trackedEntity” will work for this use case because I don’t want to look at the entity, but I want to look out from it. I would also like the user to be able to use the mouse to turn the camera with respect to the moving entity (for example, to look out the left window of a moving plane).

In a traditional game engine, I would do this by attaching the camera to the entity, so it would move with it, but retain its own local transform with respect to the entity so that it was free to move with respect to the entity.

The only way I can think of right now is to keep track of the “user-controlled” transform separately and multiply it with the entity transform at every clock tick. Is there a better way?