Floorplan Blueprint or waypoint system

I’m looking for a way to do an interactive floorplan like you would see in a Panotour (click a hotspot, jump to that view). The HAL archviz toolkit had what I’m looking for but its no longer for sale. I’m new to UE4, can anyone point me in the right direction, even if its just the blueprint logic to build something like this myself. Thanks!

Hi, I made a slightly simpler version of the HAL floorplan myself and I am not exactly an experienced blueprinter. So here are the broad steps. Before you start: any variable you use has to be stored in your custom player character because the UI widget does not exist at this point. Also if you close your widget all data stored in there would be lost or inaccessible so you always have to store all data in your player character.

  • Use a plane with a simple size, like 1000x700 units and place it in the scene.
  • Add a translucent or masked material with the floorplan onto it (use one per floor if you have multiple floors)

You can do this in the construction script of the blueprint. Create a mesh per floor, create an instance of the material per floor.

  • Place your blueprint in the scene and scale it so the floorplan matches the building shape. In the event graph add to “Begin Play” Get the origin of the planes as well as the scale, rotation and bounds and store them in variables.

If you want points to teleport to create a simple blueprint and place it where you want a teleport location.

  • Store their location and name on “Begin Play” in arrays in the player character.

Now you got all the data in your character. Next step is to create the UI widget. You have your plane in the world and how it is scaled. You also have the size of your floor plan texture. You have the location marker blueprints and you always have the player location.

  • Place the texture in the UI widget. It will have a (uniform) scale in there.
  • Now you can use math to calculate where the player is in the UI relative to the location of the plane and the player in the scene. A simple lerp might be able to do that.
  • You can also calculate where all the location icons are in the UI relative to their location in the scene and place a button/icon there.

Once you got that working the next step is to give your UI interactivity. Mouse and keyboard controls are relatively simple to implement. It works a bit like navigating a web page. Using a game controller however is a totally different story. You don’t have a mouse cursor or the concept of something being in focus on the game pad so you need to forget navigating like a webpage and simulate everything through blueprints.

Hope that helps a bit. It is not really an easy task but I could do it so I guess you will be fine eventually.

Hey, thanks for the detailed reply. I get some of what you’re saying based on some blueprint tutorials I’ve already watched, but I agree this is definitely pretty deep based on my newness to UE4 & blueprints, etc. I’ll give it a try tho, thanks for the pointers.