Jump to content
Happy Holidays! Limited Staff Responses: 1/20 - 1/31 ×

screenshots video capture Input and quit issues for Unity Vive Focus 3 OpenXR application


Dynepic
 Share

Recommended Posts

I've successfully ported our test Unity OpenXR application to Vive Focus 3 from Quest 2

We're having the following issues, however:

Permissions:

               We're installing the APK by doing Build & Run from within Unity.  But the app will not allow us to either screenshot or video record it -- those buttons are greyed out.  How does one enable this permission for a developer handset?  Is there an Android Manifest change we can make, or do we have to sign the app in some way?  This is a test app that only goes to developers.

Quit:

               The app ignores the Quit command from the system which comes up as an option when pressing the Vive key.  Do we have to put specific code under application quit event?

Input:

              We are using Action based controllers.  but they're not working as expected. 

               We have Focus 3 interaction profile installed   But for example,   leftHandTeleportActivateReference and rightHandTeleportActivateReference, , do not work. 

 

Please advise

 

Arthur

Link to comment
Share on other sites

  1. Sounds like you might in kiosk mode with recording turned off.
    1. Are the recording/screenshot apps available in other apps if those options are available in other apps that you're not building.
    2. Try looking at the kiosk mode settings https://www.vive.com/us/support/vive-focus/category_howto/entering-and-leaving-kiosk-mode.html
  2. Really old ROM versions or sdk versions had a recording/menu bug like this, make sure to update to latest ROM version on the headset and sdk for the project
  3. I'm not sure i have enough information to debug the input questions, but perhaps a good baseline is if the prebulit apk works for you.
    1. XR-Interaction-Toolkit-Examples
      This repository contains various examples to use with the XR Interaction Toolkit - GitHub - hardcoded2/XR-Interaction-Toolkit-Examples at openxr_origin2
      github.com
      --note the left and right hand do work differently on purpose in these demos, as some of the ui text explains "

      Default controls: 

      Use the Trigger button to interact with UI.

      Use the Thumbstick to move and turn.

      Use the Grip button to grab objects. When holding an object with your left-hand Ray Interactor, you can use the Thumbstick to rotate and translate the object. 3. If the apk works, then try building from the source,

  4. Try building from the source https://github.com/hardcoded2/XR-Interaction-Toolkit-Examples/tree/openxr_origin2 and this should produce the same results. If there is some oddities here, perhaps try using unity 2020.3.37 to further rule out variables 
  5. What version of unity are you using? What version of the wave sdk?
  6. Maybe logcat logs might be useful if all the above fails to yield results

 

I just re-tested the above samples and did nto see this behavior on rom version 5.0.999.624, unity 2020.3.37f1 and openxr plugin 1.0.2

@Dynepic

Link to comment
Share on other sites

thank you for the update.

The headset was NOT in kiosk mode -- but putting it in and out cleared the issue with Screenshot, Video recording, and Quit not working, so thank you for that.  Firmware is at 5.0.999.624

We are using Unity 2020.3 LTS, OpenXR and Locomotion https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@1.0/manual/locomotion.html

Snap action is working, but triggering Locomotion On/Off is not working, whether we use the standard "lefthandteleporter" action or create our own -- say tied to a controller button.

all of this IS working on Quest.

The URL you sent expired -- can you resend?  Is there an example that specifically uses Locomotion package from Unity?

Thank you!

Arthur

 

 

 

 

Link to comment
Share on other sites

we figured out the issue we were having.

The OpenXR action context does not appear to be specifying which controller (left or right) is requesting the action.

context.control.device.name  for the Quest specified left or right controller -- so far we've not found a variable in the context structure that says WHICH controller triggered the action.

 

As we only want to present the Teleport fishhook on demand, on a single controller, we need to know which controller sent the trigger (we're using joystick) -- all variants we checked, deviceName, description, controller etc do not appear to specify left or right\

would appreciate any feedback

 

Arthur

 

 

 

 

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...