SAV Formatted Input

 

Coming soon! Download from the Unity Asset store

 

SAV Formatted Input is a simple and light weight prefab that enhances the legacy InputField component. SAV Formatted Input supports "C# formatted string" output. Works with Meta Quest interactors. Works in passthrough. Works with Quest 2 and Quest 3 in both AR and VR for a better user experience.

Features:
  • Enhances the legacy InputField component
  • Supports C# formatted string output
  • Limit number of characters
  • Set upper and lower limits
  • Supports Hex/Decimal/String
  • Edit with the Touchscreen OR Virtual Overlay keyboards
  • Supports OVRCameraRigInteraction, OVRInteractionComprehensive and Building blocks
  • Works with Meta Quest Interactions
  • Includes a Virtual Keyboard setup to work with OVRCameraRigInteraction and Ray interactors
  • Works in Meta XR Simulator (keyboards do not work)

Unity version 2021.3.29f1 or later is required to use SAV Formatted Input

Meta Quest Family Only:

  • * A Pointable Canvas Module is required by SAV Formatted Input for Interactions.
  • * Meta Quest features, recommended practices and documentation change frequently.
  • Required Meta XR SDKs:
    • Meta XR Core SDK
  • Optional Meta XR SDKs:
    • Meta XR Interaction SDK

 

 



Coming soon! Download from the Unity Asset store

SAV Formatted Input QuickStart:

Install SAVFormattedInput package.

Meta Quest Family Only:

* Some links may be out of date. Meta Quest features, recommended practices and documentation change frequently.

  1. Setup interactors and interactactables and controllers (see below)
  2. Confirm Pointable Canvas Module exits
  3. Search for and drag the SAVFormattedInput prefab into the hierarchy
  4. Search the hierarchy for OVRCameraRig
    1. In OVRManager script->General->Requires System Keyboard
      1. Check for system keyboard
        1. In SAVInputField->InputFieldWithStringFormat_Quest->OVR Virtual Keyboard, Set OVRVirtualKeyboard to None. (See SAV Formatted Input Settings)
      2. Uncheck for OVRVirtualKeyboard
        1. In OVRManager script->General->Virtual Keyboard Support
          1. Choose Supported or Required
        2. Drag your OVRVirtualKeyboard to SAVInputField->InputFieldWithStringFormat_Quest->OVR Virtual Keyboard (See SAV Formatted Input Settings)
  5. Position the SAV game object in view of the OVRCameraRig
  6. Scale the SAV game object for better viewing
  7. Build and run
  8. See sample scene "SampleScene - [BuildingBlock]" for a [BuildingBlock] implementation example
  9. See sample scene "SampleScene - OVRCameraRigInteraction" for an OVRCameraRigInteraction implementation example
  • Building Blocks Only:
    1. Drag in a Camera Rig
    2. Drag in Hand Tracking
    3. Drag in Ray Interaction (this may be required to jump start the hand pointers)
    4. Optional: Drag in Virtual Keyboard
    5. Optional: Drag in Controller Tacking

SAV Formatted Input Settings:

MaxCharacters - Maximum display characters. Default 0 = all.
UpperLimit - Maximum display value. Default 0 = all. Should be larger than LowerLimit
LowerLimit – Minimum display value. Default 0 = all. Should be smaller than UpperLimit
FormatString - standard or custom numeric string format. Default '' = no formatting
OVRVirtualKeyboard – The assigned OVRVirtualKeyboard will be used. None (default) is TouchScreenKeyboard.
     * Drag your OVRVirtualKeyboard to this setting.
For Legacy InputField setting Reference: https://docs.unity3d.com/550/Documentation/Manual/script-InputField.html

 

SAV Formatted Input additional help:

Both Keyboards show up
- See https://developer.oculus.com/documentation/unity/VK-unity-overview/
**On the Oculus menu, go to Tools > Update AndroidManifest.xml.
- Set visibility of [BuildingBlock] Virtual Keyboard to false in hierarchy.
- Uncheck CameraRig->General->Requires System Keyboard.
- See QuickStart above. In SAVInputField->InputFieldWithStringFormat_Quest->OVR Virtual Keyboard, Set OVRVirtualKeyboard to None. (See SAV Formatted Input Settings)

No keyboards show up
- See QuickStart above.
- Use a short trigger pull on the InputField.

System/Touchscreen keyboards do not dynamically update sliders
- This is unfortunately due to bugs in the System/Touchscreen keyboards we had to work around.
System/Touchscreen keyboards takes extra letters on backspace
- This is unfortunately a bug in the System/Touchscreen keyboard we could not work around.