ControllerHUD - Enable Controller/Keyboard support for your Unreal Engine 4 UMG Widgets

€0+
2 ratings

ControllerHUD is designed to minimize the modifications needed to support existing HUD systems.

It is purely Blueprint based and does not require any C++ or re-parenting of existing widgets.


You can find videos demonstrating ControllerHUD here: https://www.youtube.com/watch?v=F-qB2QLReiQ

and here:

https://www.youtube.com/watch?v=RJxZnYm2vlM


Why should I use ControllerHUD instead of other available UI design systems?

You should not. ControllerHUD serves a different purpose and will most likely play nice with other systems. ControllerHUD adds Gamepad/Keyboard controls to a UI. Nothing more. Nothing less.


Am I restricted to rigid layouts like Grids and Vertical/Horizontal Panels?

No. They make live easier but ControllerHUD does work without them. Check ControllerHUDSkillBoardWidget for an example implementation of layout-less navigation.


Is ControllerHUD a Plug&Play solution?

Unfortunately not. It is not enough to download ControllerHUD, tick a checkbox to activate Gamepad/Keyboard controls and be done with it. But don't worry. Setting ControllerHUD up for a simple UI is a matter of minutes.


What do I have to do to make it work?

ControllerHUD consists of two components:

The ControllerHUDManagerComponent that will be added as a component to your PlayerController.

A BlueprintInterface that is used to enable communication between UMG widgets and the ControllerHUDManagerComponent.

Two things must be done by the developer: Relay input from the PlayerController to the ControllerHUDManagerComponent. Implement the ControllerHUDWidgetInterface in a UMG widget.

The latter requires maybe 20 mouse clicks to set up for a simple widget.



ControllerHUD contains:

- One ActorComponent for managing navigation and bookkeeping.

- One BlueprintInterface for interfacing UMG widgets with the ActorComponent.

- One tutorial widget that explains how to setup the system step by step.

- One futuristically themed 3D widget that shows how to implement a simple Inventory system. (Including material and textures.)

- One fantasy themed widget that shows how to implement something like the skill system interface of Final Fantasy X or Path of Exile. (Including textures)

- Five demo widgets that do not use custom graphical elements but demonstrate how to create different kinds of UI elements.


Limitations of ControllerHUD:

- Controller interacts with Buttons and Checkboxes (which is arguably a special kind of Button). If you need support for other UI elements, please contact me before purchasing ControllerHUD. There might be a way to implement what you need. But I cannot make any promises without knowing the details.

- ControllerHUD cannot trigger button's 'Click' events. This is not really a problem but the need to re-setup the 'onClick' binding for existing UIs might be annoying.

- GridPanels require a 'columns first' ordering of child widgets within the Panel. If your grids are filled 'rows first', you might need to to some reorganizing.


Check https://forums.unrealengine.com/showthread.php?127918-Gamepad-Keyboard-Controlled-UMG-HUD for support.



Version 0.3 Change Log:

- ControllerHUDManagerComponent now stores a reference 'ActiveUserWidget' to the UserWidget instance the currently focused button belongs to. If the currently focused button is not a child of a nested UserWidget, the reference is None.

- Buttons are only focusable when visible.

I want this!
Copy product URL

Ratings

5.0
(2 ratings)
5 stars
100%
4 stars
0%
3 stars
0%
2 stars
0%
1 star
0%
€0+

ControllerHUD - Enable Controller/Keyboard support for your Unreal Engine 4 UMG Widgets

2 ratings
I want this!