After my blog about Gaze/Look based VR input system, I’ve received a few emails about inputting text in VR, specifically around Unity’s Input Field.
Ahh… Unity Input Fields… they are so problematic on many levels…
Firstly, bugs, Input Fields rendered in world-space have several known bugs with displaying the caret in the wrong position. I’m not sure why Unity has not resolved these yet.
Secondly, conceptually text input in VR is obviously not going to be do-able with a physical keyboard, so you need a virtual input panel controllable by either a joystick input device and/or a virtual pointer. At this time though, Unity only supports input panels for mobile builds with a touch screen (iOS/Android) which are rendered in screen-space. Unfortunately Unity has no world-space keyboard listed on their roadmap.
In this blog, I’ll show you how to create a canvas world-space keyboard for VR using look/gaze based control.
Watch the video below, when the keyboard is displayed the user can look at the keyboard button they want to trigger and select it with a physical button (Space on the PC physical keyboard, or X on the X-Box controller, or GearVR short-press button).