Most people probably don't want to care about all the math to create a minimap and (almost) any game benefits from a minimap! So here's my extremely customizable minimap which is very easy to use, it's (almost) plug and play, and it's 100% blueprint!
- The minimap is orienting to a location and rotation you specify, for example the player, so it's converting the world location to the location on the map.
- If you use a landscape, the minimap automatically knows about all the dimentions and sets itself up to work correctly. If you do not use a landscape, you have to manually specify the "bottom left" and "top right" of the area which should be visible on the map.
- You can smoothly zoom in and out the minimap with scrolling the mouse wheel while the mouse is over the minimap.
- You can draw either colored points, textures or materials as points on the minimap, you just need to specify the world location, it's one single node.
- The minimap can draw arrows (color, material or texture) for points which are currently not visible on the minimap. The points then appear at the border of the minimap and point in the direction where the currently hidden point is.
- You can either use the shape of a rectangle or a circle for the minimap. For the frame you can use any fitting texture you have, the minimap comes with 2 example frames, one rectangle and one circle.
- If you click on the minimap, it can convert the click location to world location. It calls one function which gives you the world location and if you have specified a trace channel, the minimap automatically traces down against it, otherwise you will get a location with Z=0.
- For the background of the minimap you can either let the minimap capture your level automatically or you can use your own texture. If you use your own texture, you can even change it any time during the game, so for example you could display multiple floors. If you choose the automatic capture, you can set how often the texture get's updated, the minimap does not depend on updates.
- If you want, you can lock the location, rotation and zoom of the minimap so that always the full map is visible.
Here's a screenshot from the demo level which comes with the Minimap:
You can use it with any type of game. With the default settings it's using a SceneCapture2D for getting the base image and you can specify how often this image is updated. If you don't want to display Static Meshes on the image or they are not moving during runtime, you can basically just only take one image once since the minimap itself does not depend on this image!
You can also (and most game do this!) use your own background texture for the Minimap, so you can easily create a custom stylized background, like a real map for example.
And since the whole minimap is blueprint only you can easily modify it to your own needs!
Here is part 1 of a a very detailed tutorial series on how to configure the minimap:
If you have any questions, let me know, I'm here to answer them all, or directly contact me via PM or at email@example.com