New video Jan 2nd, 2017:
I’m working on a code plugin that provides map and minimap functionality and will be simple to integrate into any UE4 project from 4.13 and up. My intention is to release this to the marketplace. I realize there is already one map and one minimap solution on the marketplace, but both of them are built in blueprint. The plugin I’m making is aimed at people who highly value the run-time performance of their game and want to avoid losing performance to computations in blueprint. To that end the plugin provides the option to render maps with UMG or drawing directly to the HUD’s Canvas. The design of the plugin is also component driven such that making an actor appear on the minimap is as simple as slapping a component on it and setting a texture. The same goes for making an actor the center point of a minimap. Furthermore in this day and age UIs are expected to be highly interactive, so the icon components fire events such as OnMouseOverStart/End, OnViewEntered/Left and OnClicked that you can bind functions to in C++ or BP, icon appearances can be changed on the fly and icons can play material animations.
Here are the features that are currently working. Please let me know what you all think of these and whether there is anything that you think is missing.
- are rendered using UMG or Canvas. All features are compatible with either method.
- are circular or rectangular. Icons will seamlessly slide into and out of the minimap, rather than popping in.
- are rendered full screen or in a corner of the screen.
- show a fixed area or follow any actor such as the player
- can be zoomed, panned and rotated
- background can be clicked. The click position will be converted to a world coordinate and an event will be fired that you can bind functions to in C++ or BP.
- background can be auto-generated or a hand drawn texture can be specified
- background can be composed from multiple areas each with their own texture, in case it would be wasteful to represent your map with one huge texture
- background texture and material can be changed on the fly for ‘undiscovered’ or ‘fog of war’ type effects
- can be tied to any actor by adding an icon component to it
- can use any texture or material
- have a ZOrder value to give you control over which icon should appear on top
- can be clicked and mouse-overed, firing events that you can bind functions to in C++ or BP
- can be animated by having the material make use of a supplied “Time” parameter. Plugin comes with two animations: a flashing icon and a pulse/ping as common in multiplayer RTS and top-down MOBAs
- can rotate to show the actor’s rotation
- can show a different icon that stays at the edge when the actor is outside the minimap’s range
- can have any of the above properties changed during gameplay and their appearance will immediately update in all of the exsting (mini) maps
Please see the video of the plugin in action and let me know what you think!