useWebVR property os scene splits image into two. However, I found that it does not look properly in VR headset (testing in HTC Vive). Basically, in VR you expect to see two different images that propelry align in headset, but in Cesium this images almost identical which creates effect of double vision (diplopia). I found #3909 which was supposed to be fixed in #5917, but setting eyeSeparation works only at specific distance (like it doesn't make sense to be different depending at distance to object), and focalLength doesn't help at all. So after looking through source code, I think that problem is at executeWebVRCommands function in Scene.js. If instead of setting offset to viewing frustum, set PerspectiveOffCenterFrustum with planes calculated according to referenced in code paper, images align correctly.
useWebVR
property osscene
splits image into two. However, I found that it does not look properly in VR headset (testing in HTC Vive). Basically, in VR you expect to see two different images that propelry align in headset, but in Cesium this images almost identical which creates effect of double vision (diplopia). I found #3909 which was supposed to be fixed in #5917, but settingeyeSeparation
works only at specific distance (like it doesn't make sense to be different depending at distance to object), andfocalLength
doesn't help at all. So after looking through source code, I think that problem is atexecuteWebVRCommands
function in Scene.js. If instead of setting offset to viewing frustum, setPerspectiveOffCenterFrustum
with planes calculated according to referenced in code paper, images align correctly.