The kitchen sink

Since AR and VR apps are built using the same engine, the same subsystems, assets, tools, and utilities as any other Unity game, literally every other performance enhancement mentioned in this book, can help VR and AR apps in some fashion, and we should try them all before getting too in-depth with XR-specific enhancements. This is reassuring, as there are a lot of potential performance enhancements we could apply. The downside is that we may need to apply many of them to reach the level of performance we need for our app.

The biggest threat to a VR app's performance is the GPU fill rate, which is already one of the more likely bottlenecks in any other game, but significantly more so for VR, since we will always be trying to render a high-resolution image to a much larger frame buffer (since we're effectively rendering the scene twice—once for each eye). AR apps are typically going to find extreme consumption in both the CPU and the GPU since AR platforms make heavy use of the GPU's parallel pipeline to resolve the spatial locality of objects and perform tasks such as image recognition, as well as requiring a lot of draw calls to support those activities.

Of course, certain performance-enhancing techniques are not going to be particularly effective in XR. Occlusion Culling in a VR app may be difficult to set up since the user can look under, around, and sometimes through objects in the scene (although it can still be enormously beneficial). Meanwhile, AR apps normally render objects at reachable distances; LOD enhancements – that is, using simpler meshes for objects far away – may be fairly pointless to set up.

We must use our better judgment to determine whether a performance optimization technique is worth implementing before we start implementing it, since many of them take a lot of time to implement and support.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.47.253