cancel
Showing results for 
Search instead for 
Did you mean: 

UnityVr vs Oculus Utilities

Anonymous
Not applicable
Hi guys!
I'm at a confusion point...
I'm reading two separate docs:


I'm trying to use a single, unified base for my project, but I don't know which one I should stick with (integrating both sounds like a debugging nightmare waiting to happen).
I understand that Unity wants to cover more than just Oculus (Vive & PSVR), but what does that mean for Oculus developers when considering the two integrations?

My immediate questions are:


  • What things should I weigh in (pros/cons) considering which to marry my project with?

  • Is there any indication that Oculus Utilities will fully dissolve into UnityVr?



Any thoughts?
22 REPLIES 22

SDAS_Hodgson
Explorer
Personally, I started with the Oculus Utils and stripped out whatever I didn't need (i.e. Button Mapping and such bc I was using another plugin for that), and added the Unity VR Stuff in as well. There's lots of good stuff from both companies, and I think it's great we're all sharing our experiences. That's really what's going to make this tech take off is the collaboration and experimentation of Devs trying new things and adopting what's best, and chucking the rest.


Also, I'm surprised Oculus hasn't actually put the Oculus Utils in the Unity Asset Store. It'd make updating and pulling into the project that much easier.

motorsep
Rising Star
Depending on how long it will take for Unity to add all necessary stuff from Oculus Utils into the engine, it might make sense for Oculus to release stripped down Utils that can be dropped into Unity VR examples with a detailed tutorial how to hook up most critical (for the app/game to be accepted to Oculus Store) functionality. Although I doubt that will ever happen :roll:

motorsep
Rising Star
@vrdaveb: Do you think you guys can make such stripped down version of Utils to work with Unity's VR examples ?

vrdaveb
Oculus Staff
We are working with Unity on a plan for reconciling the Utilities and their new VR samples. There is nothing to announce yet, but you are free to modify both.

Anonymous
Not applicable
"vrdaveb" wrote:
We are working with Unity on a plan for reconciling the Utilities and their new VR samples. There is nothing to announce yet, but you are free to modify both.


Thanks for chiming in!
This is exactly the info I was looking for 🙂

Is there an update or a timeframe for this?

Just wondering if I should be trying to integrate both packages now, or wait a month and there's going to be a better solution?

vrdaveb
Oculus Staff
There is nothing specific to announce at this time. My expectation is that given their newness, the samples will probably change more over the next several months than the utilities will.

Ok thanks, I was looking through it and there isn't much that needs to be changed around to get it to work. Thanks for the update.

Conz
Explorer
After some testing, I'm not that happy with the Oculus Utilities (including the UI sample).

- I have troubble with the OVR Character controller. In some cases it starts to rotate very slow vertically by looking left and right. (Seems a problem with calculating the world matrix, in that case the OVR Gazepointer has an offset, too)

- Why does the GazePointer use RaycastAll and sort the result? Why not a simple ray? The OVR solution is very slow and detects the "gazable" objects through walls. Removing the gazable layer mask would be way too slow. Where is the benefit to detect more than the closest target?

- The OVR Input solution is properitary and doesn't depend on the Unity "CrossPlatformInput", what makes it really annoying to change the controller settings.

- The OVR-Input throws a compiler warning, for using deprecated code.

- I'm not convinced by the mouse pointer logic in the OVR Input.

I got the best results by using only the UnityVR implementation (and a modified FPSCharacterController) with classic "CrossPlattformInput" and my own (simple ray) gaze pointer.
The OVR Utilities are a little bit over complicated and not really following the classic Unity style. I would welcome a deeper cooperation between Oculus and Unity here.

vrdaveb
Oculus Staff
"conz" wrote:
I have troubble with the OVR Character controller. In some cases it starts to rotate very slow vertically
You mean OVRPlayerController? Sounds like dead zone is too tight for your controller. In a future release, we're planning to increase it a little to prevent this. In the meantime, can you change the 0.15f dead zone in OVRInput.cs to 0.2f?

"conz" wrote:
Why does the GazePointer use RaycastAll and sort the result?
It sounds like you're using the sample VR UI project from our blog (https://developer.oculus.com/blog/unity ... tem-in-vr/). That isn't part of the Utilities, it's a drop-in replacement for the usual mouse-driven input modules in UGUI. It implements Unity's GraphicRaycaster interface, which returns all hits in sorted order. This is more flexible than Physics.Raycast and Unity probably needs it for a number of corner cases in their UI logic.

"conz" wrote:
The OVR Input solution is properitary and doesn't depend on the Unity "CrossPlatformInput", what makes it really annoying to change the controller settings.
OVRInput is designed to be similar to UnityEngine.Input, which drives the undocumented CrossPlatformInput class's StandaloneInput back-end. Unity prefers not to include any Oculus-specific code in their Standard Assets, but we are still working with them to expose this in a cross-platform way.

"conz" wrote:
I'm not convinced by the mouse pointer logic in the OVR Input.
Which logic is that?

"conz" wrote:
- The OVR-Input throws a compiler warning, for using deprecated code.
I'm unable to reproduce this. What Unity version and Utilities version are you using? What is the warning? Is it in OVRInput.cs or OVRInputModule.cs?

"conz" wrote:
The OVR Utilities are a little bit over complicated and not really following the classic Unity style. I would welcome a deeper cooperation between Oculus and Unity here.
Sorry, but I need more detail to understand what is wrong here. Can you describe what part of the workflow is too complicated and how you would like it to change?