Search Issue Tracker
By Design
Votes
0
Found in
2018.4.0f1
2019.2.0a1
2019.3.0a1
2019.3.0b3
2020.1.0a5
Issue ID
1185462
Regression
No
[SRP][VR] Performance is significantly worst using Single Pass Instanced compared to Multi-Pass Rendering
Steps to reproduce:
1. Create a new HDRP project
2. In Player Settings, set 'Virtual Reality Supported' to true, and choose Open VR
3. Change Stereo Rendering Mode to 'Single Pass Instanced'
4. Open Profiler
5. Put on the VR device or cover the headset inner sensor
6. Enter play mode
Results: FrameEvents.XRBeginFrame -> XR.WaitForGPU -> XR.WaitForGPU -> Gfx.WaitForRenderThread spikes up to 110ms. If entering play mode before putting the head set Gfx.WaitForRenderThread cost 50-60ms. Tested with GTX 1060 and i7-6700K.
With this set up and using Multi Pass Gfx.WaitForRenderThread cost 20-30ms and there is no difference in entering play mode with the device or without.
Reproduced with: 2020.1.0a5, 2019.3.0b5, 2019.2.7f2, 2018.4.10f1
Tested and reproduced with:
HDRP 7.1.1 and 5.7.2
URP 7.1.1
LWRP 5.7.2
Note:
- The issue isn't consistently reproducible and performance degradation varies quite often.
- This issue is easiest to reproduce with HDRP and OpenVR, but it can be reproduced with URP, LWRP, and different SDKs (tested and reproduced with Oculus and OpenVR).
- This issue isn't reproducible with Default RP.
Comments (1)
-
jeanpaul84
May 17, 2021 07:43
Hi,
I'm having this exact same issue. Can you please explain why the issue is by design? Single pass is meant to provide better performance than multi-pass.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Build and Run button greyed out for locally invalid architecture, despite remote build is specified
- Graphics Settings: “Use Defaults” checkboxes misaligned in Tier Settings section
- VFX Graph particles are not culled when using URP and Frustum Culling is enabled on VFX Mesh Output
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
Resolution Note:
The attached project is using "High Quality Volumetrics". This feature is extremely costly, especially in VR. Disabling should resolve the performance issue you're seeing.