Switching between First Person & Top Down (RTS Style)

How can I switch from first person view to top down (RTS Style) where the camera would move and not the player?
To be more clear, I want to switch from FPS view (where player controls the movement of the character) to a top down view (where the player then controls the camera instead).

I tried doing it two ways:

  1. By having two different cameras inside the character blueprint and using set active to change between them, but I couldn’t figure out how to move the camera without moving the actual character.

  2. By having a separate pawn with the top down view that the player would then posses. I tried this but after possessing I was unable to move the character & the view did not switch to the newly possessed actor.

I think if you want to use an actor as a camera, you could attach said actor to your character and “set view target with blend” rather than possession. You can still have the camera use control rotation

However, I would probably use a spring arm and set arm length and use control rotation when you toggle between the view modes.hope it helps

How could you differentiate movement between the camera and the character then? I want to be able to move the camera on the X & Y axis while the character does not move.

Ex: WASD in FPS moves the character normally, then when you enter build mode; WASD would no longer move the character & would now move the position of the camera along the X & Y axis.

Add a branch or switch on your movement input. Depending on what solution your going for you can either set the relative location of the camera actor or the socket offset of your spring arm. Again, I recommend using a spring arm. Let me know how it goes and if you have any more issues

You would have to either add local offset or set relative location on your camera.

I got the camera working but am unable to actually move the camera. This is the blueprint I tried that didn’t work.

Any ideas on how to do this?

Here’s the blueprints for swapping camera views.

Got it working now; thanks!