Looking-Glass / looking-glass-webxr

WebXR for Looking Glass displays
https://docs.lookingglassfactory.com/developer-tools/webxr
Apache License 2.0
66 stars 16 forks source link

Objects get culled away at or near window borders #21

Open hybridherbst opened 2 years ago

hybridherbst commented 2 years ago

It seems that the culling calculations don't take the full frustum into account: when one has a scene with smaller objects, these get culled away ~10% of the screen width away from the sides of the screen, leading to visible popping of objects:

(probably you have to look at this on a Looking Glass Portrait, but you can already see some "popping" happening in this recording)

https://user-images.githubusercontent.com/2693840/201499541-9a3694c2-f69c-4254-8d97-03d453fc68eb.mp4

BryanChrisBrown commented 2 years ago

it appears this is due to the first camera in the array being used for culling, this may be on three.js' end as it may not be expecting the other cameras that are part of the XR view to be as far away as they are. We'll need to look into this one further

hybridherbst commented 2 years ago

I thought three calculates a frustum that is guaranteed to include all immersive session cameras but maybe that is only working for 2 cams? Not sure. Looking forward to what you find!