Hello, this is my first engine request, so feel free to quote me if I’m wrong with anything I state here.
As a Roblox developer, it is currently difficult to optimize VR games for standalone VR. Usually, you have to cut down heavily on graphics, and it’s probably also why there’s no Realistic lighting on standalone VR.
At the moment, one of the best methods for improving the performance for any standalone VR game is Foveated Rendering. This is to keep the main focus point/where the eyes are looking in high detail only, and lower the detail in your peripheral vision.
As an example, heres a basic representation of foveation
Some games that include foveation are Beat Saber on the standalone Quest, or even if you’re using something like Virtual Desktop to a PC, that also has foveation to improve the framerate
If Roblox is able to address this issue, it would improve my development experience because I wouldn’t have to heavily cut down on graphics just for standalone Quest or other VR players for a smoother experience, as I’d rather everyone have the same graphical advantage to one another. Plus, this would probably make Realistic lighting possible on standalone VR.
I was quite surprised this hadn’t been requested before, so I’d like to bump this. I understand that a feature request shouldn’t focus heavily on a proposed solution, yet the issue it can contribute towards solving is widespread but very simple.
Foveated rendering being implemented into Roblox has the potential to meaningfully increase performance in VR, depending on the implementation (of which there are currently many, including in major VR games like the first-party PlayStation title ‘Horizon: Call of the Mountain’) and assuming the user’s GPU is the factor limiting their performance rather than their CPU, saving as much as 50% of the GPU’s resources in some cases. This is very important in VR specifically, since a recent paper has suggested that a higher resolution and frame rate can significantly decrease the prevalence of what it terms ‘simulator sickness’ and improve the player’s own experience within a game.
For the uninitiated, there are two main types of foveated rendering; with one, fixed foveated rendering or FFR (as simple as it sounds; the graphical fidelity is higher in the centre of the display, where the user is likelier to be looking), being possible on any device and the other, eye tracked foveated rendering or ETFR (in which whatever the user’s eyes are focusing on informs which elements are rendered at a higher fidelity) requiring a headset capable of eye tracking. While as mentioned before the former can be used in any headset and deliver a great performance gain (see image below), the user being able to observe the resolution being lower in certain regions of their display is less than ideal. Whereas, eye tracked foveated rendering not only delivers a greater performance gain (since a smaller area has to be rendered because it moves constantly) but very importantly isn’t noticeable at any point, because of the high accuracy and frequency of modern eye tracking.
It’s likely that one will have heard of the new PCVR headset set to be released early next year, the Steam Frame. One of the most significant developments of it will be the inclusion of eye tracking in the headset, which is likely to be adopted by a much greater quantity of PCVR users than any other headset with this feature. However, while the PCVR market isn’t insignificant and Roblox generally has great support for it, it’s clear that the more accessible Meta Quest line of standalone headsets comprise the vast majority of Roblox’s VR user base. At this moment, no flagship Quest headset has support for eye tracking, suggesting that any performance benefits, however significant they may be, would only be enjoyed by the small minority of VR users with headsets capable of eye tracking and might not justify consuming the limited time of engineers implementing it. Yet it is currently believed that the next flagship Meta Quest headset will support eye tracking, making it much likelier that the effort required to develop eye tracked foveated rendering will have a meaningful payoff in performance for enough users.
Regardless, I’d love to see this feature being considered at some point.