Set Input Mode UI only does not work with motion controller

Hey everyone. I’m building a terminal system in VR using widgets. I’ve gotten it to work somewhat, the only problem is that whenever I set the input focus to the terminal using the Set Input Mode UI node in order to traverse the terminal’s menus, I can only do so using the keyboard. I was under the impression this node also supported gamepads(as in, motion controllers thumbsticks). Does anyone have some insight into this ?

Thanks in advance


Well, for Gamepad you pretty much have to do all or a lot of the work yourself, as this example shows… For that reason and also because of reported bugs with the Set-Input nodes, its often easier to just make your own purpose-built system. In other words, detect controller ‘keydown’ Input events and then route the inputs to where they need to go depending on if the game is in a UI State, or in the middle of actual gameplay (as dictated by your own code etc). Can’t speak for VR though. Epic love VR, so its possible there’s a richer system there. See if there’s any VR devs about… @vr_marco

Motion Controller Thumbsticks and gamepads are different input devices and behave differently. The MC input in particular is ultimately controlled by a VR plugin depending on which VR device you have. MC do not necessarily emulate gamepads.

This said, there could be a way to emulate keyboard input by grabbing a MC thumbstick input and then generating a keyboard (or mouse) event to interact with your terminal. This is how the Widget Interaction Component works. You may want to take a look at it here: Widget Interaction Component | Unreal Engine Documentation

Thanks @franktech for tagging me.

@vr_marco - Cheers dude!

Thanks a lot for the answers thus far. I’ll be looking into the Widget Interaction Component @vr_marco, thanks for the tip. However, while simulating a keyboard press from the thumbsticks in my MCs in order to make the most of the system already in place,which is listening to keyboard inputs, would be nice, wouldn’t that have the drawback of allowing keyboard inputs to still work in conjunction with the MC inputs?

Not entirely sure I understand the last part of your comment. The keyboard input will work anyway, you are just using the MC’s to simulate some keyboard keys in case someone wants to interact through them.


I was working with the Interaction-Widget during the past week and bookmarked this in case it helps. Can’t help out any more though as my projects all use Gamepads as I mentioned. However, watch-out for some strange bugs. I hit one here and verified it there, but couldn’t find anything else about it…

Sorry if I didnt word it correctly, what I meant was, since I’m using the MCs to simulate keyboard inputs, that means that the keyboard itself can still influence gameplay right? So I could be interacting with the terminal using my MC thumbsticks, while still being able to do the same thing with my keyboard at the same time.

It’s not the worst thing ever, since in order to play the game in VR the player wouldnt be too close to the keyboard either way, but I just wanted to be able to stop him from pressing an arrow key by mistake while in VR.

It’s a minor problem though, thanks for the feedback!

The alternative is to use a widget interaction component associated to the Motion Controller and exclude any keyboard input. But you may have to redesign how your terminal works.