Issues with foveated rendering in 0.7.1/2022.3.16f1

We are a fully immersive VR app using URP, and we are seeing an issue with the newest 0.7.1 VisionOS package and Unity 2022.3.16f1 that seems to be related to foveated rendering. Most of the time it works properly, but at certain points it will enter what I can best describe as a sort of “tunnel vision”. I’m not completely sure what’s happening - it seems like the center area of the user’s gaze still renders properly, but the peripheral areas stop getting redrawn. In some cases it only happens for a few seconds, but it persists through our entire loading screen and throughout certain experiences we have.

Since it mostly happens during points where we are loading or initializing, it seems likely there might be some sort of resource constraint triggering it, but we also noticed it occurring at certain times when the user looks
~90 degrees to the side or up.

When it does happen it’s pretty uncomfortable, so this is a blocker for us. The issue went away when we reverted to 2022.3.15f1.

Hi there! Happy new year, and sorry to hear you’re having trouble.

The “tunnel vision” you describe sounds like what happens if you try to enable foveated rendering on the visionOS side but not the Unity side. This can happen, for example, if you just set the “enable foveation” flag in the Swift code on earlier versions of the plugin that don’t support foveated rendering.

However, in that case it just always looks wrong, regardless of load. I haven’t seen the issue you are describing, but it does sound like it’s related to foveated rendering.

I can try to reproduce this issue on my end, but it will help us solve this more quickly if you can report a bug with a project that demonstrates the issue. Our bug reporter can be pretty slow, so if you prefer to use a secure file sharing service like Google Drive or Dropbox, please feel free to do that and just share a link here in this thread or via direct message to me. I appreciate that you may not be able to share the exact project you are currently working on, but it will help to know exactly what type of load causes the issue, in case it’s something specific.

I’m sure you’ve considered something like this, but is it possible to temporarily fade to black during these loading screens? It’s not a permanent solution, but may help mitigate comfort issues while still allowing you to test with foveated rendering.