Switching from perspective to top view while in Play mode

Hi all,

Does anyone have any idea how can I switch from perspective to top view while in Play mode?
I have currently developed a project which is in First Person mode. It’s a retail store with all the walls, floor, ceiling and merchandise stands inside…

While exploring the store in First Person mode I need to be able to hit a keyboard key which will do two things:

  1. Bring me to top down view of the store
  2. Hide the ceiling and other view obstructing objects

The idea is the be left with just the walls, floor and all the merchandise stands inside. The goal is to be able to move the merchandise stands around later on.

That is a lot to ask, I know, so for now I need to find out how to switch views and hide the ceiling.

Any video tutorials showing similar things?

Thank you very much for any help.

You should make 2 cameras in the character blueprint, and when you disable the first camera, you should automatically start seeing from the 2nd camera. As for hiding the ceilings, you could run a trace with multiple hits, and any static mesh it hits, make it invisible. I guess you could add the invisible meshes to an array so you can make it visible again at a later point (if you get out of the store or switch camera etc).

Thank you very much for the help, DjSt3rios.
After many attempts I made it to work.

Much appreciated.

You could aswell add some more polish to that mechanic: slerp the location of the first person camera to the top one as well as it’s rotation :slight_smile:

If your ceiling is just a plane and you place the top down camera above it you shouldn’t see the ceiling unless your material is 2 sided.

But if the ceiling remains I shouldn’t be able to select objects under it, no?

If you do a raytrace to “select” items, you can add the ceiling to the ignore actors array

I’m sorry for being so late to respond. Thank you very much for the helpful tip, Zarkopafilis.
I’ll check out that option.

Camera arm has very nice interpolation build in. Try adding lag to arm.