cancel
Showing results for 
Search instead for 
Did you mean: 

Huge request that most devs will agree with...

markhansaven
Explorer
So I've been using the Oculus Utilities for Unity off and on for the past couple of months. So far it's worked great, but I think most of us Unity devs can agree that we would like to see a more bare bones sdk. Maybe I'm missing something here, but the Oculus Utilities are not only outdated, meaning they come with all kinds of warnings that load up your console that you end up having to deal with, and meaning there are shader errors upon trying to build....but it also comes with avatars and all of this extra unnecessary stuff tacked on.

Why can't you guys just create an extremely bare bones sdk? There is built in basic Oculus support anyway, so the only reason I end up using the sdk is for use of the gear vr controller...and there's all of this other extra stuff included in the package. 

Right now Oculus Utilities comes with the whole avatar sdk and the ovrinspectors folder or whatever, both of which have shader errors when building in 2017 (I'm using 2017.2 at the moment...). I don't think I'm alone when I would say that we want a nice low MB Oculus Utilities that doesn't include all of the extra stuff like avatars tacked on. Maybe I'm out here embarrassing myself, maybe there already is a more bare bones way of working with this? It would be easy if I didn't need to use the gear vr controller, but that was the point of me buying and using the gear vr in the first place. 

The package is extremely finicky, it doesn't feel modular. You delete one thing, another thing demands that that piece you deleted is there. The shaders take forever to import into Unity for some reason, so you end up not wanting to re-import the package when you figure out that you can't just use the damn OVR folder alone because the whatever's in the OVR folder demands that you have the other folders there as well. This is not a simple way of working. To get it working, I end up having to delete all these shaders and then it works fine without any problems. Why were the shaders there? Because of avatars or something. I don't even know what an avatar is, I don't care, and as a developer I don't want to know, I just want to create a good VR game.

Otherwise, I think you guys have done a great job, I mean...once one actually gets the hang of how the sdk works in Unity. It doesn't feel very bare bones or modular in nature but it works to a degree. I just wish you guys would think along the lines are simple, fast and bare bones, that's what devs want.
7 REPLIES 7

markhansaven
Explorer



I have been using the Utilities for Unity package. I am trying to figure out how to just import and use the bare bones required scripts so that I only have the OVRCameraRig at the moment. 

Unity already has Oculus integration built into it if you just add Oculus to the supported platforms. What we need is simply two new packages. One package that adds Gear VR controller support and one package that adds Rift controller support, both for Unity 2017+. With just two very simple bare bones unity assets like that it will be much easier to develop. Otherwise, there are just too many errors. I had a working game 2 weeks ago that simply just stopped booting up now for example. I'm working to just simplify everything as all I and many others need having the support for the Gear VR and Rift built in, is simply a bare bones controller package. It's already working perfectly for Unity without controllers without adding any assets! All we need is to get the controllers in there, no extra scenes or avatars or prefabs or what have you. Unity updates too often to keep up with such a bulky package, and doesn't the team also have to work with staying up to date wth Unreal?

It just seems like it would be more practical to just have a simple controller asset, no test scenes, no shaders unless they're up to date, necessary, and are functional.

paw9k
Protege
You can get a lot done in Unity in VR without ever importing the Oculus SDK.  
Everyone has different needs but given the right app you might not even need to import the Oculus SDK.

For example you can get the position of motion controllers like this:
UnityEngine.XR.InputTracking.GetLocalPosition(UnityEngine.XR.XRNode.RightHand);

It is a bit of a chalenge to read joystick and trigger values with out the Oculus SDK I will say that but it can be done:
https://docs.unity3d.com/Manual/OculusControllers.html

My fantasy would be if Unity got with Oculus and OpenVR and came up with a common Unity specific api that worked for both so we wouldn't need to import either SDK and just toggle some check boxes in the Unity player settings.

I guess where I'm going with this is if there was going to be a bare bones SDK made up I think improving what Unity exposes as a minimum SDK to support VR would be more attractive to me.

markhansaven
Explorer

paw9k said:

You can get a lot done in Unity in VR without ever importing the Oculus SDK.  
Everyone has different needs but given the right app you might not even need to import the Oculus SDK.

For example you can get the position of motion controllers like this:
UnityEngine.XR.InputTracking.GetLocalPosition(UnityEngine.XR.XRNode.RightHand);

It is a bit of a chalenge to read joystick and trigger values with out the Oculus SDK I will say that but it can be done:
https://docs.unity3d.com/Manual/OculusControllers.html

My fantasy would be if Unity got with Oculus and OpenVR and came up with a common Unity specific api that worked for both so we wouldn't need to import either SDK and just toggle some check boxes in the Unity player settings.

I guess where I'm going with this is if there was going to be a bare bones SDK made up I think improving what Unity exposes as a minimum SDK to support VR would be more attractive to me.



I see, thank you for the post. That little diddy really helped out, and studying the Unity API XR section I'm seeing more of this now...

What I did to get Gear VR working properly is I purchased the Gear VR controller asset at the asset store. It works in conjunction with the Oculus Utilities package. After getting a working build on my phone/headset I then simply imported my big project slowly into their working sample project. It works flawlessly now (at least so far, I'm scared of messing with any prefabs as it may not build or something I feel). I must have imported the Oculus Utilities package AFTER I imported the Oculus Integration package on the asset store. I must have had a different uncompatible dll over here while I had a new dll over there or something. 

It works quite well now, though, using the gear vr controller asset. I made sure to touch and edit NOTHING from the OVR package this time and I'm ignoring completely the Oculus Integration package found at the asset store.

I agree completely with you about Unity working with OpenVR AND Oculus APIs together, though. We may see that in 2018 I think, though? 

delphinius81
Rising Star
Unity's XR Input API doesn't work with the gearvr/go controllers, so you have to add the oculus unity tools to get the OVRInput class.

The Oculus Integration package on the asset store has issues (doesn't get updated that fast, package organization is different compared to downloading the individual packages). I don't recommend using it.

markhansaven
Explorer


Hi,

I have passed this feedback along to our integrations team for their input.

EDIT: Can you confirm that you are not using the Unity Sample Framework? The Utilities for Unity package should be what you are looking for.



I have been using the Utilities for Unity package. I am trying to figure out how to just import and use the bare bones required scripts so that I only have the OVRCameraRig at the moment. 

Unity already has Oculus integration built into it if you just add Oculus to the supported platforms. What we need is simply two new packages. One package that adds Gear VR controller support and one package that adds Rift controller support, both for Unity 2017+. With just two very simple packages like that it will be much easier to develop. Otherwise, there are just too many errors. I had a working game 2 weeks ago that simply just stopped booting up now for example. I'm working to just simplify everything as all I and many others need having the support for the Gear VR and Rift built in, is simply a bare bones controller package.

markhansaven
Explorer


Hi,

I have passed this feedback along to our integrations team for their input.

EDIT: Can you confirm that you are not using the Unity Sample Framework? The Utilities for Unity package should be what you are looking for.



I have been using the Utilities for Unity package. I am trying to figure out how to just import and use the bare bones required scripts so that I only have the OVRCameraRig at the moment. 

Unity already has Oculus integration built into it if you just add Oculus to the supported platforms. What we need is simply two new packages. One package that adds Gear VR controller support and one package that adds Rift controller support, both for Unity 2017+. With just two very simple packages like that it will be much easier to develop. Otherwise, there are just too many errors. I had a working game 2 weeks ago that simply just stopped booting up now for example. I'm working to just simplify everything as all I and many others need having the support for the Gear VR and Rift built in, is simply a bare bones controller package.

delphinius81
Rising Star
The oculus unity utilities are already pretty lightweight imo. More importantly, they include some rather useful scripts. OVRManager alone is worth the import for hooking into HMD state delegates.

The warnings don't affect anything other than being annoying. Some Unity functionality was deprecated (that's what the warnings are mostly about), but the code still works.

I'd suggest you completely delete all files related to Oculus and then re-add the packages you need from their specific download page (not the asset store) if you are seeing actual errors.