cancel
Showing results for 
Search instead for 
Did you mean: 

Unity Editor freezing on window-focus changes in OculusVR 1.17

jaconcha
Explorer
While Oculus VR Runtime Service is running (in Windows Services), changing focus between Editor windows in any Unity project is followed by a 4-10 second freeze of all input.  The sessions appear to be affected regardless size/complexity/version, as I tested on 3 different versions with 3 different active projects and 3 new empty projects (6 total tests)

It seems to only be when you change between windows in the Unity Editor.  If you stay in one window, it's able to run smoothly.  Are there any solutions out there to this?  It's as close to blocking as a blocker can be.  It may also be related to the latest Windows 10 update, since I received both between sessions of Unity work.

But, if I stop OVR Runtime Service, it works like a dream.

Thanks for the help!
43 REPLIES 43

rvpeterson
Explorer


@rvpeterson

As posted above, this is an active issue that is being internally triaged at this time and a fix will be announced when this process has finished.


Of course, I appreciate that. I just wanted to know if anyone had perhaps found a 'hacky' workaround, instead of having to stop/start the OVRService continuously (pretty impractical for development).



Same here. I've been re-installing everything trying to track this one down. Totally unusable on my home computer, though my work computer isn't affected. Stopping the Oculus VR Runtime Service stops the problem

I can't do any VR development at home. Is there a way to rollback the runtime version?


Thanks, that's saved me the bother of reinstalling everything - I'm so desperate I almost nuked my OS and started from scratch. Interesting that your work PC is fine.. Any ideas what might be different between your home and work PC?

Personally my set up is as follows:

Windows 10, using Oculus 1.17, Unity 2017.1, SteamVR SDK.
AMD FX-8320, Nvidia GTX 970 with 382.05 drivers
Also using the FL1100 chipset with 3.8.33709.0 driver

I'd also like to know if there's a way to rollback. Appreciate this isn't the solution Oculus want, but it's the solution we need right now to continue development.

rvpeterson
Explorer
Sorry to bump, we attached a debugger to Unity and captured the callstack during a freeze:

https://gist.github.com/rvpeterson/e336f9ebca892dd6a3684a3a1acd5e0d

Not experts by any means, but seems to point towards USB issues. Hopefully this is of some help.

Edit: We've tried it with a blank project, without enabling VR, and we get the same issues... iirc you can start a blank project and Unity will enable VR SDKs automatically if it detects a HMD.. so perhaps since the oculus version change, something broke with this "detection"..? I'm actually pretty intrigued now!

jaconcha
Explorer
I was noticing just yesterday that I started to have weird sensor failures/errors/undetected notices for one of my sensors (it changed which one would have the issue every hour or so, and they seem to be working decently today, so it wasn't the sensors).  I think that this theory holds water, for sure.

It couldn't be a power-draw thing, could it?  I've noticed my monitors also flicker and I get that Windows "a device was connected/disconnected" sound.  That might explain USB drops and device-detection issues.

rvpeterson
Explorer
Yeah I'm starting to really think it's USB related. I was also getting random disconnected/connected sounds. All 3 USBs are plugged into the FL1100, but I might try switching some around tonight to see if that makes a difference. I have onboard USB3.0 but it's not a recommended chipset, of course..

Anonymous
Not applicable
Same sensor failures/errors/undetected notices, after restating OVRService to Play, but are inconsistent/random. Hope some progress asap


Kenopipuu
Honored Guest
For me, this happened after 1h of work in unity. One of my Oculus cameras went red and after that Unity started having issues. I fixed this by unplugging the camera that was on red and it went green and all was good 😄
( reposting from reddit  )

jaconcha
Explorer
Yeah, replugging the sensors fixes that right up, but doesn't cure the Unity slowdown at all.  I have been running the service about 7 hours now, and haven't seen the sensor issues today.  Still got the slowdown though.  My office has dubbed this "The Oculus Plague," and people are desperately fighting to prevent Oculus and Windows 10 from updating as much as possible, since 3 of us have caught it!

I'm also on that same USB3.0 hub (FL).

hoesing
Explorer
Unity developer here.

Yes, it is indeed USB related.  Specifically, certain USB devices are far slower to enumerate than they should be.  Normally this is a minor annoyance, and one that we're looking into fixing.  But for some reason, with the 1.17 runtime update installed, we're getting Windows messages to re-enumerate USB devices whenever you click around from panel to panel in the Unity editor UI.  This happens whether you have a headset plugged in or not, and with all recent versions of Unity whether you're working on a VR enabled project or not.

Here's a link to the Unity forums discussing this issue in a bit more detail:

https://forum.unity3d.com/threads/lag-when-switching-between-editor-windows.487352/#post-3181221

rvpeterson
Explorer
@hoesing Many many thanks for looking into this and thanks for the update.

In your other post you mention tracking down the device - In my case it just so happens that the offending device is also the HMD, which I found via a process of elimination.

If you need any more information about my system specifics to help narrow down the problem I'm happy to provide that.

As you mention, we weren't seeing this issue with the 1.16 runtime so I reiterate my request to Oculus to allow at least developers to downgrade to previous versions of the runtime.

Massycat
Honored Guest
My problem seems to have been resolved by updating the drivers for the Inateck USB 3.0 pcie card that I have installed in my machine. It uses a Fresco Logic FL1100 Series controller apparently.
I grabbed the 3.8.33709.0 version drivers from the Inateck website and Unity is now working.