Open Bonfi96 opened 6 years ago
Can you post a screenshot?
It's possible that the issue is related to the device misreporting the actual screen DPI, which would impact the distortion and prevent stereo convergence. Would you mind posting the result of the following command:
adb shell dumpsys display | grep mBaseDisplayInfo
Here's a screen and the command output
mBaseDisplayInfo=DisplayInfo{"Built-in Screen", uniqueId "local:0", app 1080 x 2160, real 1080 x 2160, largest app 1080 x 2160, smallest app 1080 x 2160, mode 1, defaultMode 1, modes [{id=1, width=1080, height=2160, fps=60.000004}], colorMode 0, supportedColorModes [0], hdrCapabilities android.view.Display$HdrCapabilities@a69d6308, rotation 0, density 440 (397.565 x 449.704) dpi, layerStack 0, appVsyncOff 1000000, presDeadline 16666666, type BUILT_IN, state OFF, FLAG_SECURE, FLAG_SUPPORTS_PROTECTED_BUFFERS}
Nothing about the screenshot would indicate issues with convergence. Are you saying that only the Cardboard headset has problems? Is it impossible to converge, or just difficult?
I had a 16:9 phone (stolen yay) and currently a 18:9 phone (headset configured properly with the same qr code), I used to develop using the old one and everything was fine, could focus without issues. Now with the new phone both gvr unity apps and the youtube app share this same issue, it always look like it's going to work but L & R images are always too far apart for the brain to merge them
I did a test right now, I took my screen and scaled it to 16:9, viewing the screen from the device the 3D effect is properly working. This brings me to think that the app is stretching the view to fit 18:9 while at the same time breaking the effect
It's also possible that the reported DPI isn't the true DPI, which could yield the stretched visuals you're seeing.
Is there any way you can measure just the physical display area so we can check if the reported DPIs are in the right ballpark?
136x68 mm = 5.36x2.68 inches
Can you run adb shell dumpsys display | grep mBaseDisplayInfo
in both 16:9 and 18:9 modes and share that here?
The 18:9 results are posted above, I can't run it on the 16:9 device as I dont' have it anymore
Yeah, it looks like the device is misreporting the (portrait) vertical DPI (actual: 402, reported: 449), which could cause stretching of the horizontal visuals when in landscape.
What is the device name as reported by adb shell getprop ro.product.device
? We might consider adding a static override for the DPI, though it'd be nice to avoid that. Does the device offer any kind of custom Display settings you can fiddle with?
The device name reported is vince Weirdly enough it's working fine with other apps, some of them do work okay, some do not. Is there any chance it could be related to the apps using vertical or horizontal dpi? As far as I can tell the app built with unity gvr is running in portrait mode when in vr, maybe that can be changed in the manifest? Sadly there are no settings I can't fiddle with, not even in the dev settings, and root is not an option :(
The device is likely reporting the wrong DPI to ensure compatibility with apps that use 16/9 assets (16/9 == (18/9 * 400/450), where 450 is the misreported DPI). This probably works fine for some apps, as you say, but not for others (and not with Cardboard).
...so apps that should work correctly on 18:9 end up not working correctly. I'll try to contact xiomi about the problem and see if they can do anything about it
@Bonfi96 any update from xiaomi? Did you manage to contact them?
I contacted them and sent a complaint to their forms a long time ago. No answer. What I've been waiting for is the release of a big system update they have been teasing for months (in beta now, hopefully released soon). It might solve the issue so I was waiting for it before posting here again
Xiaomi just delivered the oreo update today. Sadly the problem still persists
Hi, Bonfi96. I use redmi 5 plus and I have that issue too, but it already solved.
So what you need is generate custom QR code for your VR Headset. If you don't know how to do it, just take a step on this link: https://vr.google.com/cardboard/viewerprofilegenerator/
Then what you need is go to "Advanced Viewer Parameter" and set outer FOV to 33 (For the eyes with IPD 58 like my eyes), leave the others to default (50).
Your problem will be solved. I check it using VR Player Free and it not stretching anymore, is not like before I use this step.
And if you wish your VR apps to the center of display, activated full screen display for your VR apps. you can do it from settings -> full screen display -> fullscreen mode -> (select you apps that you wish to full screen.
I hope that will help you.
Regards,
San2aleron
Hi, I update the solution...
If you set the FOV like this:
FOV Angles
Outer (°) 33 Inner (°) 50 Top (°) 50 Bottom (°) 50
then your VR images will too tall, then after I trial and error, I just found the best FOV values are:
FOV Angles
Outer (°) 33 Inner (°) 33 Top (°) 28 Bottom (°) 31
Hi san2aleron,
Just wanna say thanks.
Took me awhile to rectify the double vision problem with Redmi 5 Plus. Re-installed Unity and Google VR SDK a couple of times and finally came across your post above which solved my problem.
God bless you!
Regards, Oliver
You're welcome Oliver 😊
Can I ask the question? Does the problem that we find only happen to the Redmi 5 Plus cellphone? How about a cellphone with another 18: 9 screen?
I had this issue with Xiaomi Redmi 6 Pro (custom firmware, Pixel Experience Android P) and fixed it by generating the calibration QR code with the "Sites in VR" app. However, one issue still remains : the image still appears to be stretched, the objects are distorted. Look at the screenshot, a sphere looks like an ellipsoid. I measured the screen, and the reported vertical DPI is in fact wrong: 2280x1080px vs ~5.27"x2.5", i.e. 432 DPI vertically, while reported is "480 (397.565 x 474.688) dpi"
@jdduke could you please advise? I have root just in case. The device name is phhgsi_arm64_a, but this seems to be a generic name, because it's a Treble firmware...
If you have the original qr code of your headset, just load using site vr then edit the ipd the value to 55 then make a new qr code using site vr.
I hope that help you.
If you still confused, then just tell me what headset you use and your eyes ipd. I'll try to help you make the right qr code for your headset.
On Sun, Jan 27, 2019, 1:13 PM Anton Lastochkin <notifications@github.com wrote:
I had this issue with Xiaomi Redmi 6 Pro (custom firmware, Pixel Experience Android P) and fixed it by generating the calibration QR code with the "Sites in VR" app. However, one issue still remains : the image still appears to be stretched, the objects are distorted. Look at the screenshot, a sphere looks like an ellipsoid. [image: screenshot_20190127-013119] https://user-images.githubusercontent.com/1300156/51797294-aee53480-2222-11e9-82e3-c4f168fc5872.png I measured the screen, and the reported vertical DPI is in fact wrong: 2280x1080px vs ~5.27"x2.5", i.e. 432 DPI vertically, while reported is "480 (397.565 x 474.688) dpi"
@jdduke https://github.com/jdduke could you please advise? I have root just in case. The device name is phhgsi_arm64_a, but this seems to be a generic name, because it's a Treble firmware...
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/googlevr/gvr-unity-sdk/issues/911#issuecomment-457892209, or mute the thread https://github.com/notifications/unsubscribe-auth/Aq75G1FAdHttf_yWPeseKzQSGgcp9Fw1ks5vHUN7gaJpZM4T9zk- .
@san2aleron focusing is not a problem anymore. The problem is that objects are stretched horizontally: a sphere looks like an ellipsoid in the screenshot. Most likely you are having this issue too, just haven't noticed.
I see, if your device rooted, you can fix it with easy DPI Changer.
But your real problem because the android p custom rom that you used change the original driver of your driver using the wrong driver. I got similiar problem too when using bad android p custom rom (fingerpeint problem). What you need is bring back your device to miui rom for your device, then install the good android p custom rom. I use AOSPExtended for my redmi 5 plus, the simple Android P custom rom that not change the original driver.
I hope that will fixed your problem.
On Sun, Jan 27, 2019, 4:16 PM Anton Lastochkin <notifications@github.com wrote:
@san2aleron https://github.com/san2aleron focusing is not a problem anymore. The problem is that objects are stretched horizontally: a sphere looks like a ellipsoid in the screenshot.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/googlevr/gvr-unity-sdk/issues/911#issuecomment-457901675, or mute the thread https://github.com/notifications/unsubscribe-auth/Aq75G9K6tpfXk8SMe4vjgLc2ko50A2bZks5vHW55gaJpZM4T9zk- .
The problem is that DPI changers seem to only be able to change the total DPI, not vertical/horizontal separately. Plus, adb shell dumpsys display | grep mBaseDisplayInfo
still shows the same parameters.. I think the only way is by modifying the firmware..
Summary: The vr view is not working correctly on my 18:9 device. The vr view is shown like in any other device, the problem is that the L and R images are too far apart and they will never merge in a 3d image once the headset is worn
Found using:
Steps to reproduce the issue:
Workarounds:
Additional comments: I also noticed the situation is similar to the youtube app, the issue is the same as probably the underlying tech is the same