Forum Discussion
roback
9 years agoExplorer
Gear VR S6 Android 5.1.1 vs 6.0.1 - performance drop - WaitForGPU/vsync issue
Hi!
We are developing VR game for Gear VR (and Rift later on). Recently we spotted performance drop from stable 60 fps down to 30. Further search showed up it's due to abnormally high WaitForGPU and that it's happening only on Android 6.0.1 (we have to S6 phones and one has updated to Marshmallow while the other did not).
Is something broke in Samsung's Android itself? Drivers? Is it on Unity? Oculus utilities? How even process further such issue? Image below shows profiler running. At first on updated S6, then on 5.1.1. S6. Build is exactly the same, all Oculus software on phones updated. Still - it's broken and v-sync part goes mad on newer version.
Also - we have only 19 draw calls and all assets with broad margin to recommended for mobile VR.
We are developing VR game for Gear VR (and Rift later on). Recently we spotted performance drop from stable 60 fps down to 30. Further search showed up it's due to abnormally high WaitForGPU and that it's happening only on Android 6.0.1 (we have to S6 phones and one has updated to Marshmallow while the other did not).
Is something broke in Samsung's Android itself? Drivers? Is it on Unity? Oculus utilities? How even process further such issue? Image below shows profiler running. At first on updated S6, then on 5.1.1. S6. Build is exactly the same, all Oculus software on phones updated. Still - it's broken and v-sync part goes mad on newer version.
Also - we have only 19 draw calls and all assets with broad margin to recommended for mobile VR.
9 Replies
Replies have been turned off for this discussion
- patrickbulmanHonored GuestThis may or may not help, but check to make sure power saving mode for the device is off. I noticed when updated a device to marshmallow that this setting was flipped back on by default.
- vrdavebOculus StaffI'm not aware of general slowdown on S6 + Marshmallow. It's possible that this is thread a scheduling issue. We reduced locking significantly in OVRPlugin 1.3.0, which you can get at https://developer.oculus.com/downloads/game-engines/1.3.0/OVRPlugin_for_Unity_5. What Unity version are you using? It would help to have the full output of adb logcat during the lifetime of the application.
- aelita1992ExplorerWe checked power saving mode but it was not the case, it was still disabled.
We're using Unity 5.4.0b9 now and it worked without any problems before Android version upgrade. We created both builds from this Unity version and only Android 6 coulnd't handle 60fps. We tested a build on Unity 5.3.4 as well and the problem happens there as well, profiler shows 30FPS but the big amount of work is presented under "other" instead of "VSync" category. We're using 1.3.0 plugin for both 5.4.0b9 and 5.3.4 versions of Unity.
I'm attaching some logcat prints, a copy for Unity 5.4.0b9 build named NewUnity and a copy from 5.3.4 version build - OldUnity . - vrdavebOculus Staff@aelita1992, are you sure you're using Unity's built-in VR support? It looks like you're using a version of our legacy Unity 4 integration that has been modified to work with Unity 5, which would be unsupported. If you've upgraded from an old Unity 4 project, please follow the upgrade section at http://docs.unity3d.com/Manual/VRDevices-Oculus.html. Basically, delete OculusPlugin and the OVR and Moonlight folders from your project and import the Utils downloaded from https://developer.oculus.com/downloads/game-engines/1.3.0/Oculus_Utilities_for_Unity_5/.
- aelita1992ExplorerDidn't notice ovrRig is an obsolete construct.
Getting rid of ovrRig and placing standard camera instead helped a lot indeed. The framerate is closer to what it was before and the drop is much smaller, even though the max tris limit is still about 5-10k lower before the <60fps drop appears. Anyway it seems the direction is correct, I gonna perform further research on the problem, thank you for fast and succesful help :) - vrdavebOculus StaffOVRCameraRig is not obsolete. It has been re-implemented for Unity 5. It looks like you were using a very old version. You can get the new copy from the link I provided.
- DahrrrHonored GuestHi.
We have the same problem. Our game have only 60 or 30 fps. Nothing between. Even in almost empty room. This really looks like vsync. We replaced old ovr scripts but this didn't help us. We are working on unity 5.3.4p1. We have new android sdk and everything is actual.
Few observations:
- It shows only at scenes where we use occlusion culling
- Scene without occlusion culling (like one room) have good performance. 60k tri, 60 batches and stable 60 fps. It's much much heavier than in next example.
- Scene with occlusion culling (few rooms). When we look into place, where next rooms should be (behind wall), we get stable 30 fps. If we move camera a bit, than we get 60 fps again. It have drop from 60 to 30fps in one moment, we never get any fps between. We test that in room with 10k tri and 20 drawcalls. So it's impossible to get such fps drop.
Regards,
Bartłomiej Galas - DoctorZHonored GuestThis is so bad, we are experiencing the same issue on Samsung Galaxy S6 Edge on the Gear.
Was all smooth and fine, until Android 6 Marshmallow update came, and the performance became really poor.
Now motion sickness is very heavy, because of framerate is low on the simplest scene.
Also, after Android 6 update, many time the stand-by mode (when you unwear the gear) is hanging the phone badly, and also many power press make it answer back (this is not only a Unity apps issue).
What is going on ? - asdjonasdHonored GuestT-mobile - SM-N920T - Note 5 - After upgrade to 6.0.1 - major problems.
- Phone goes from 100% to 50% in about 4 hours, with NO use.
- Gear VR does not work
- Constant pop-up of black screen with small X in bottom right. Accompanied with the sound Gear VR makes when user connects to head set.
- Oh yea, constant pop-up of black screen with small X in bottom right whenever using phone
Did cache wipe and factory reset. Twice. Same problems. DO NOT UPDATE TO MARSHMALLOW 6.0.1!!! If you were able to update with no problems, good for you. Not worth the risk of having a useless phone for those who have not.
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 1 month ago
- 4 years ago
- 10 months ago
- 2 years ago