Disabling the keyboard when a controller is detected
Hey everyone. I think the title is pretty self explanatory. I'm building a game in VR using UE4, and I've just included support for the Oculus Rift motion controllers. Problem is Unreal still recognizes the keyboard as a viable input option, even when I'm actively using the controllers. Is there any way to dynamically change the input options in project settings, so as to prevent this ?
Thanks in advance
asked Mar 29 '18 at 04:59 PM in C++ Programming
I fixed this by creating new Input and Action mappings in the project settings for each different input device I wanted to have ( like say MoveForwardPC and MoveForwardOculus for an example ), then creating a new Action mapping, which I assigned to a random Key ( K in my case ) that, when called, directly emptied the Input Components Axis Mappings TArray and called Clear Action Bindings on it too. I then proceeded to rebind the Axis and Action events on the now empty arrays to the same functions as before, except now using the mappings from the other input device that wasn't being used ( so if originally MoveForwardPC was bound, pressing K would now bind the MoveForwardOculus mapping and so on and so forth ).
With this I effectively managed to silence the input from the keyboard when using the Oculus motion controllers and vice versa.
I dont think this is an optimal solution but it works well enough for now. I may return to it in the future in order to find a way to dynamically silence a current device's input when another device is plugged in. I'll be sure to share my solution if I do.
answered Apr 05 '18 at 03:41 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here