VR Visual bug in right eye

While previewing in vr, the top left of my right eye, and the bottom right of my right eye has these blocky black and white splotches. the white dots pulse when I move my head.

I have tried to switch off forward rendering, but that did not fix the issue for me. Unreal engine 5.2.1 does not have this bug and issue.

Am I correct to assume that this is a bug with 5.3, and that there’s multiple people that have it? Has anyone else maybe found a workaround?

im using a quest 2 and pico 4 vr headset, and ive used streaming assistant, link, airlink and virtual desktop. all of them give me the bug.

games like vrchat, into the radius, vtolvr, dcs and so on do not have this bug. it is purely UE 5.3

Edit: switching from DX12 to DX11 on UE 5.3 fixes the issue.
DX12 on 5.2.1 still does not have the issue though, so DX12 on 5.3 seems a little broken.

This happens to me too when using Virtual Desktop and SteamVR. Try using airlink and oculus as the xr runtime, then it will work. They need to fix this bug regarding steam vr for sure.

When I use airlink or link, it seems to get even worse, lol. Switching to vulkan or DX11 fixes the issue, so this seems to be a DX12 bug.

As of right now, that’s my workaround, but its still a bug that I would like to be totally fixed either way.

Now presuming that you haven’t dropped your headset and that damage to the headset is the rule out for this then the only other issue is that the GPU of your headset needs an update or something is wrong with your GPU, If you have ever played the new Baldurs Gate 3 there is a scene where you watch a cutscene and There is a major Graphics problem that they didn’t fix before they released the game. So check those drivers and Update, if that doesn’t fix it let me know.

I use both the pico 4 and the quest 2. everything works fine on both of them.

I have used oculus link, airlink, virtual desktop and Streaming assistant. the bug occurs in all of those softwares, ONLY with unreal engine set to direct x 12. This is Unreal engine 5.3 and 5.3.1 exclusive.

if I switch to DX11, the bug dissapears.

I am up to date on my GPU drivers, and some people in some discords have the same bug as I do, but with the pimax, as an example.
here is one such example.

Edit: I see you already posted there, lol

1 Like

So you pretty much know a big part of why its messed up, i can’t exactly go into code about it since im not studying that, but if it works on direct x11 then run that and not 12, i had issues with 12 in the past as well, don’t forget that anything new will always have kinks and issues with it. Good luck

the issue seems to be gone now, but the bug was not present on v 5.2.1. on that version, DX12 worked just fine. It is only present on v5.3 and v 5.3.1. it’s an unreal engine bug that needed to be fixed and reported.

still, it seems to be gone for me atleast now, so I’m happy.

Was switching to DX11/Vulcan the only way you resolved the issue? We have the same issue, and would like to keep DX12 support.

One thing I have noticed is that changing the ScreenPercentage value the amount of visual distortion would change making it feel like a screen space effect that’s gone awry.

Update:
More digging and research, this happens when the screen percentage is above 80, below 80 the issue doesn’t visually present like this. You can however see that the ambient occlusion pass is only being applied to the left eye and slightly flickery so I think it’s related to SSAO getting enabled in VR.

Replying as editing doesn’t bump the thread…

In addition to my edits above, if you disable post processing using ShowFlag.PostProcessing 0 then the issue goes away, along with the rest of the post processing stack…

While debugging a different “right eye issue” I’ve encountered additional clues to this one (although I can’t determine the why yet).

When using Windows Mixed Reality as the OpenXR Runtime with an HR Reverb G2, the issue presents at screen percentages >80%, BUT when using a SteamVR as the OpenXR Runtime with a VIVE Pro, the issue only persists when “supersampling” with screen resolutions >100%

Chiming in that this issue happens for me using Unreal 5.3.2 with DirectX12 when using the Quest 2. The issue does not happen on the Quest 3.

The issue also goes away on the Quest 2 when I use DirectX11.

This is very annoying because my workflow requires DirectX12 (Gpu Lightmass).

have you set something that is manually changing the video encoding? try making sure link and airlink are both set to auto, if link options aren’t available you use the debugtool exe. pretty sure steam VR and virtual desktop can change these settings for the headset that will carry to other programs

@House_zu_Heltzer I’ve partly traced the issue in this thread to a screen space effect in the UE 5.3 DX12 post processing stack, so unless something in there is changing encoding i don’t believe it to be encoding related as i get it on both SteamVR and WMR headsets.

My reasoning is when I disabled local exposure while debugging another right eye only defect the issue in this thread went away. So something adjacent to local exposure is the cause.

Unfortunately disabling local exposure also kneecaps the post processing stack requiring lots of ‘reinventing of the wheel’ to get those features back. The plus side at least is by replacing the Unreal post processing stack I’m running about 5ms under my 11.1ms render target for VR content for a mostly buttery smooth >90fps. (UE is a pretty engine, but painfully overweight)