Samsung / GearVRf

The GearVR framework(GearVRf) is an Open Source VR rendering library for application development on VR-supported Android devices.
http://www.gearvrf.org
Apache License 2.0
407 stars 217 forks source link

Low persistence in gearvr apps #696

Open dattanand opened 8 years ago

dattanand commented 8 years ago

I guess GVRF apps also run in low persistence mode of oculus. is there any way to disable it in GVRF or using any Oculus API. Is it possible in latest SDK? I could see one old thread here. https://forums.oculus.com/developer/discussion/14874/any-way-to-disable-low-persistence.

thanks dattanand

liaxim commented 8 years ago

I think this happens automatically for any vr app. Not seeing any apis in the mobile sdk for dealing with it.

liaxim commented 8 years ago

@dattanand Do you think there is something that we could do?

dattanand commented 8 years ago

If its possible to disable it, it will reduce flicker in certain cases I believe and the motion blur is not noticeable unless the scene is bright. actually we are also exploring if such change in android framework if not provided by mobile SDK can solve the same issue.

sp-1234 commented 8 years ago

I want to vote for this. For some people (including me), this kind of flickering makes it impossible to look at the screen, I get eye strain almost immediately, and it's very obvious (I guess it's 60hz?) I tried searching and didn't find any way to disable this "feature", unfortunately. Samsung should make it possible to disable this flickering (even if hidden in options somewhere)

ghost commented 7 years ago

This is quite terrible on GearVR with my S7. If I use the GearVR with cardboard apps the image is much clearer, cleaner and sharper, and there is no flicker at all. I cannot understand, why Samsung won't allow this to he deactivated!

sp-1234 commented 7 years ago

maybe something like public letter to Samsung would be a reasonable first step?

thomasflynn commented 7 years ago

It is an Oculus requirement and it is something that you do want inside the headset to reduce/eliminate motion blur. Here are a few links that explain low-persistence mode:

https://vrwiki.wikispaces.com/Low+persistence https://forums.oculus.com/vip/discussion/7181/persistence-101-how-low-persistence-reduces-motion-blur

That being said, it really shouldn't be bothersome inside the GearVR headset. It is most noticeable when in developer mode and just holding the phone.

ghost commented 7 years ago

When I put the phone in the GearVR and look at anything bright the flickering is so extreme I can't use the device for more than a minute. My wife tried it and had the same problem. So this is something that is a complete showstopper for us. In Cardboard mode (without low persistence) everything works fine.

ghost commented 7 years ago

The first thing I did after trying the GearVR for the first time was google the flickering becausebI was sure my device was somehow broken.

robcuts commented 7 years ago

It may be that you have significantly higher than average sensitivity to the low persistence mode effects. Similarly impacted individuals have suggested that turning down the brightness reduces the effect to manageable levels. If you are developing in Gear VR, it is also suggested that you use darker imagery to help reduce the effect.

sp-1234 commented 7 years ago

turning down the brightness reduces the effect to manageable levels

Nope, it doesn't reduce flickering, this is not even close to a solution.

sp-1234 commented 7 years ago

That being said, it really shouldn't be bothersome inside the GearVR headset

Really? In real life, I'm yet to meet at least one human being who doesn't notice this madness. All who looked at it said that this is completely unusable.

thomasflynn commented 7 years ago

Are you running Android M (6) or N (7) and which model of phone?

ghost commented 7 years ago

Samsung Galaxy S7 Android N (7.0)

thomasflynn commented 7 years ago

I'm guessing SM-G930F? The letter at the end is important. There is literally a different Android tree for each model :(. One of our engineers has seen something on Android N on a 930F where the screen is dimmed far more than it should. Though, it may just be the version of the engineering (not user) build he has on his device. If it's not just an issue with his device, we'll contact HQ and see if it is a known issue.

If you still see flickering on other devices running Android M, then I don't think there's much I can do to help.

ghost commented 7 years ago

It's the 930F

liaxim commented 7 years ago

@rolandrohde Just out of curiosity, are you adjusting the brightness via the Oculus menu? Long-press back key, settings option. Reducing the brightness from there has no effect whatsoever for you?

ghost commented 7 years ago

I'll try it next time I dig out the GearVR. I'm pretty confident it won't make a huge difference though. It will probably reduce the issue slightly, since it will be dimmer, but that won't change the frequency of the flicker so the real issue remains. I know from experience that goes back to the era of CRT monitors, that anything below 75Hz is unpleasant to my eyes. Somewhere around 85Hz is stops being a problem altogether. I remember, that 75Hz was the lowest refresh rate I could tolerate for more than a few minutes.

sp-1234 commented 7 years ago

@rolandrohde CRTs have lower minimum scan frequency threshold, because the flickering is also softened a bit by the fact that luminophore doesn't instantly go dark. conversely, LED can be switched instantly so the flickering can be made more harsh. LED display backlights can inflict major suffering even at 240Hz (which is common for crappy PWM-driven backlights. Good ones either use much higher frequency for PWM, or avoid PWM altogether) And here, the frequency is about 60Hz and the switching is instant, so this is completely insane.

ghost commented 7 years ago

Well, the Galaxy S7 uses OLED, so there is at least no chance of backlight flicker...

sp-1234 commented 7 years ago

OLED can switch instantly, too. And in practice OLED displays are almost always flickering just as bad (don't know why do they do this, though)

karim789 commented 7 years ago

The flickering kills my eyes too.

Back in time I choosed a flat screen with LCD over Plasma because of that.

constructor-s commented 5 years ago

I know there hasn't been much discussion for over a year on this thread now, but I would also like to ask for a way to disable low persistence mode for my specific research application. Thanks!