Search Issue Tracker
Third Party Issue
Votes
5
Found in
2021.3.33f1
2022.3.15f1
2023.2.2f1
2023.3.0a18
6000.0.0b11
Issue ID
UUM-58722
Regression
No
[XR][URP] Reflection probes with box projection result in line-crossing artifacts in VR headset builds
Steps to reproduce:
1. Open the attached user's project "VRSandbox.zip"
2. Make sure OculusXR or OpenXR is selected in the XR Plugin Management
3. In the Editor, Move the "XR Origin (XR Rig)" GameObject in front of a mirror
4. Build for Quest 2/3
5. Observe in line-crossing artifacts in the middle of the mirror
Expected results: Reflection probes with box projection do not result in line-crossing artifacts in VR headset builds
Actual Results: Reflection probes with box projection result in line-crossing artifacts in VR headset builds (See attached Repro.png)
Reproducible with: 2021.3.33f1, 2022.3.15f1, 2023.2.2f1, 2023.3.0a18
Reproducible on these devices:
VLNQA00609 - Oculus Quest 3 (Quest 3), CPU: Snapdragon XR2 Gen 2 (SM8550), GPU: Adreno 740, OS: 12
VLNQA00533 - Pico 4 (A8110) (A8110), CPU: Snapdragon 865 SM8250 / Qualcomm® XR2, GPU: Adreno 650, OS: 10
VLNQA00415 - Oculus Quest 2 (Quest 2), CPU: Snapdragon XR2, GPU: Adreno 650, OS: 10
Not reproducible on these devices:
VLNQA00528 - HMD Global Nokia G20 (Nokia G20), CPU: Mediatek MT6765G Helio G35 (12 nm), GPU: PowerVR Rogue GE8320, OS: 13
VLNQA00422 - Galaxy S21 Ultra 5G (SM-G998B), CPU: Exynos 2100, GPU: Mali-G78, OS: 11
VLNQA00460 - Google Pixel 6 (Pixel 6), CPU: Google Tensor (Whitechapel), GPU: Mali-G78, OS: 14
VLNQA00381 - Xiaomi Redmi Note 8 Pro (Redmi Note 8 Pro), CPU: MediaTek Helios G90T MT6785T, GPU: Mali-G76 MC4, OS: 9
VLNQA00282 - Samsung Galaxy S10e USA (SM-G970U), CPU: Snapdragon 855 SM8150, GPU: Adreno 640, OS: 9
VLNQA00202 - Samsung Galaxy Note 9 USA (SM-N9600), CPU: Snapdragon 845 SDM845, GPU: Adreno 630, OS: 9
Testing Environment: Windows 11
Not reproducible on: No other environment tested
Notes:
-Issue is more apparent in the headset
-Issue does not reproduce in Editor and Standalone Windows Player
-Issue reproduces with Vulkan, OpenGLES 3
-Issue reproduces with MultiView, Multi-Pass
-Issue reproduces with OpenXR and OculusXR plugins
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
- Mono Windows Builds don't produce full log callstacks when generating logs
- AssetBundles fail to load when running in Built Players for Mobile Devices
- UI elements with text gets bigger and grey when Player window is moved to another screen with different resolution
- System name accepts multiline text but crops it on confirmation, duplicates input, and shrinks the field when empty
- UI element scale and position are wrong in project build when DRS is changed with HDR and Software Dynamic Resolution enabled
Resolution Note:
Unfortunately this is a driver issue. We found a workaround to solve it but we can't land that workaround because it has performance impact to other platforms.
The workaround is to increase reflectVector&viewDirectionWS precision from half to float in shaders in the following shader functions:
BoxProjectedCubemapDirection, GlossyEnvironmentReflection, GetObjectSpaceNormalizeViewDir
And then update InputData viewDirectionWS to float3
Finally update `half3 viewDirWS` to `float3 viewDirWS` in LitForwardPass.hlsl
The issue only repro'd on Quest, and not on other Android phones we tested so far. It is likely due to the driver and we reported the issue to Meta. If you have concerns about this resolution, please feel free to reopen and provide more details. Thanks