Forum Discussion
Will_in_Texas
10 years agoHonored Guest
SDK 1.3 Messes with the Foreground Window
I am not a game developer, but a designer of a scientific application. My VR app uses a typical MFC Window UI to select files to load and set various options for display in VR. The Window is on its...
wbsk
10 years agoProtege
Unfortunately they keep calling to change window focus at various points after the window is created it seems.
To get around the annoyances of the Oculus software and particularly the insanity that is a ~700MB of _Unity_ Oculus home app that runs when your own program tries to use the oculus device, something like the following needs to be done:
1) A slim replacement needs to take over from the fat Unity Oculus home program in "C:\Program Files (x86)\Oculus\Support\oculus-home/OculusVR.exe". That needs to do the bare minimum of servicing of calls through the API's exposed in the DLL's in "C:\Program Files (x86)\Oculus\Support\oculus-home\OculusVR_Data\Plugins" such as I guess from dependency walker "HomeNativeLib.dll", "OafIpc.dll".
2) A stub DLL for the focus grabbing win32 functions needs to be loaded into your own program so when Oculus calls them through your own program you can neuter them.
3) For reducing the amount of health and safety warning dialog fun if that can't be done via (1) then probably creating a stub xinput DLL in "C:\Program Files (x86)\Oculus\Support\oculus-client" to simulate pressing the gamepad button might be easiest.
Of course it would be nice if Oculus just made their software play nicely with the system - but no official response at all so far on this matter. I hope they do the right thing so we don't have to resort to such hacks.
To get around the annoyances of the Oculus software and particularly the insanity that is a ~700MB of _Unity_ Oculus home app that runs when your own program tries to use the oculus device, something like the following needs to be done:
1) A slim replacement needs to take over from the fat Unity Oculus home program in "C:\Program Files (x86)\Oculus\Support\oculus-home/OculusVR.exe". That needs to do the bare minimum of servicing of calls through the API's exposed in the DLL's in "C:\Program Files (x86)\Oculus\Support\oculus-home\OculusVR_Data\Plugins" such as I guess from dependency walker "HomeNativeLib.dll", "OafIpc.dll".
2) A stub DLL for the focus grabbing win32 functions needs to be loaded into your own program so when Oculus calls them through your own program you can neuter them.
3) For reducing the amount of health and safety warning dialog fun if that can't be done via (1) then probably creating a stub xinput DLL in "C:\Program Files (x86)\Oculus\Support\oculus-client" to simulate pressing the gamepad button might be easiest.
Of course it would be nice if Oculus just made their software play nicely with the system - but no official response at all so far on this matter. I hope they do the right thing so we don't have to resort to such hacks.
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device