Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

Daydream / Gear VR controller support

Discussion in '2017.1 Beta' started by WendelinReich, Apr 10, 2017.

  1. WendelinReich

    WendelinReich

    Joined:
    Dec 22, 2011
    Posts:
    228
    Didn't see this on @Alex-Lian's sticky list, or on the roadmap, but it's mentioned in the Unity 5.6 release notes as "coming to Unity 2017".

    Just wanted to say that mobile VR hand controller support is a priority for me and many others, because the Google VR SDK is getting less and less usable now that 5.6 has (partial) support for Daydream.

    Also, I hope that Unity will treat the Daydream and upcoming Gear VR controllers in an identical manner. They seem to be functionally equivalent. (With the exception of the trigger button on Gear VR?)
     
  2. greggtwep16

    greggtwep16

    Joined:
    Aug 17, 2012
    Posts:
    1,546
    Can't speak for Unity but they are usually pretty slow for input additions to their API. That being said I have just submitted an asset to the store for the Gear VR controller (usually gets approved in a few weeks). It's very similar to the apple tv one in my signature with things for swiping, motion gestures, raycasting, Unity UI navigation, etc. if you wanted to get a feel for what it will be. While I'm waiting for approval I'm going to create the same for daydream (probably take a week or so to port). The inputs are 90% the same so I'm going to feed them into the same API for those that want cross platform input as well with no modifications to support input for both daydream and Gear VR.

    In addition to cross platform ease and a collection of the common things you'd want to do (shooting, swiping, grabbing, etc.) the main addition is the short duration gestures. It isn't full position tracking since that isn't possible with just the 3 sensors but does allow you to create games with short gestures (tennis swing, bowling throw, etc.)
     
    WendelinReich likes this.
  3. WendelinReich

    WendelinReich

    Joined:
    Dec 22, 2011
    Posts:
    228
    Leave a note on this thread once you've added Daydream support, I'll be happy to buy that asset!
     
  4. greggtwep16

    greggtwep16

    Joined:
    Aug 17, 2012
    Posts:
    1,546
    I'll certainly do that. My current estimate is a week from now for daydream.
     
    Archviz3d likes this.
  5. ScottF

    ScottF

    Vice President, Platforms

    Joined:
    Jul 31, 2013
    Posts:
    96
    Universal input support for XR (VR/AR) is something we are very actively working on. The basis for this work in the new input system, which you can read some about here:https://blogs.unity3d.com/2016/04/12/developing-the-new-input-system-together-with-you/

    Building on top of this we will be adding a new component that can be added to any game object (including Camera) to drive its Position & Rotation from a tracked controller (3 or 6DOF). Much of the low level efforts are landing in 2017.1 and then additional iteration will be done in the high level (public API side) to flesh out features and create cross-device parity.

    Thanks for pointing out its absence from the road map we will update.
     
    WendelinReich likes this.
  6. greggtwep16

    greggtwep16

    Joined:
    Aug 17, 2012
    Posts:
    1,546
    I didn't mean to imply you weren't working on it, I know you guys are busy and have been busy for years working on a new and improved input system, just like you were working on the gui system replacement that got launched as part of 4.6. I hope when all is said and done it will be a good system like the gui and not a bit shaky like UNET. Only time will tell. I personally would love to be able to stop integrating 3rd party sdks.

    That being said it's very apparent that this is a LONG ways off (probably over a year even on the main platforms). I've played with all the input betas and more than a year into things I wish it would be further along. Some of my input assets have been out for around 2 years and I was hoping that by now I could use a unified Unity Input API but sadly that isn't the case.

    As always I download every new release you guys do and hope to see a major investment into the new Unity Input System.
     
    WendelinReich likes this.
  7. greggtwep16

    greggtwep16

    Joined:
    Aug 17, 2012
    Posts:
    1,546
    @WendelinReich The Gear VR asset has been approved on the store. I have ported all the functionality to a daydream version as well and gotten some feedback from some beta testers (send me a PM if you want to be a beta tester as well and I'll send you both current packages). Feedback so far is as follows as I move towards a unified package that supports both out of the box (I'll still keep the separate packages for a lower pricepoint if someone only cares about one of the platforms). So in the end there will be 3 products.

    Input Related

    -Equating the Gear VR touchpad click with the Daydream VR touchpad click isn't ideal. While they are both touchpads on gear vr the trigger is the preferred usable button where on the daydream the touchpad click is. Preference seems so far to equate the trigger click with daydream touchpad click and the Gear VR touchpad click with the app button

    -Gear VR back button navigation works well for pause, going back to main menu etc. A daydream equivalent is desired even though they don't have the extra usable button on remote. Feedback so far is to reserve app button double click for this

    -On Gear VR the all in one laser pointer/gaze control works well. It feels like Oculus home where if you are using the gear vr controller its a laser pointer but if you touch the HMD pad its a gaze pointer. However on Daydream since there is no HMD pad it's always a laser pointer. In some cases a Gaze control is useful so make another dedicated gaze control in addition to the all in one.

    Graphics Related

    -Make default hand follow control use the model's of the various SDK's (currently just uses a cube). Possibly even create my own version so that I can animate where touching is currently, button presses, etc.

    Switching Platforms Related (currently not in product)

    -In future cross platform version use defines to automatically add the appropriate sdk controls (OVRManager for Gear VR and GvrController plus GvrArmModel for Daydream).

    -Add an editor dropdown for building each platform without needing to change the top sdk in Virtual Reality SDK section


    Also I'm always interested in more feedback, as well as new example ideas. Currently the examples are bowling, first person shooter with movement, marble tilt example, unity gui navigation example, motion controller diagnostic example, and gamepad diagnostic example.
     
  8. WendelinReich

    WendelinReich

    Joined:
    Dec 22, 2011
    Posts:
    228
    Congrats, that sounds promising. Since you ask for suggestions, here are two:

    - The platform switch you mention is my number 1 wish. I'd like to be able to switch between Daydream /Gear VR controller support with a single click. I would also prefer it if your asset managed all my dealings with the GVR / OVR packages, as controller support is now apparently the only (?) reason left to use either of them. By that I mean for instance that I wouldnt have to deal with the OVR camera/hand rig in the scene direcly, but only with your asset.

    - A example scene that I would find most useful is using the controller to drag/move stuff. If you've played Mekorama on Daydream you know what I mean. They have created a smooth, simple, robust way to interact with the ground, and the visual feedback (the laser point turns into a flexible arch) is great.
     
  9. greggtwep16

    greggtwep16

    Joined:
    Aug 17, 2012
    Posts:
    1,546
    We'll see if this post sticks after the forum rollback :)

    I've sent you the cross platform beta. Feedback is welcome, certainly let me know if you have any issues, additions you'd like to see, or things you think could be done better.