I’m currently using UE 5.6 (with the expectation of a potential Polyarc branch based on 5.6 so sticking to that for now) but the I’ve tested and all the issues (except the Xcode one) are also in 5.7 as well. This is on visionOS 26.2. Overall the VisionOS experience is a bit rough in that the only way to test properly is to package and deploy a 400MB+ binary to the headset each time. But that is minor, here are some collected issues and I’m hoping others have suggestions or solutions for them. I’m using the mobile forward renderer but have tried deferred as well and that is even more broken. These are all issues I’ve tested just fine on PC using the same render path:
Major: level loading crashes either consistently with “Open Level” or 90% of the time when using “Load Level Instance” in blueprints which makes it impossible to safely swap levels (Case #23334850) resolved using a persistent level and streaming levels in and out
No anti-aliasing at all: MSAA renders everything fully black, SMAA in 5.7 renders only one eye and the other only shows the skybox and maybe a small bit of some of the ground. Everything is quite pixelated. I can’t even tell if FXAA works, feels like it is off as well if used.
Anti-aliasing can’t be changed at runtime (using blueprints to cycle through all types just to see if anything works)
vr.PixelDensity seems to have no effect at runtime (or build time using the project settings)
hitting the home button then re-opening the app just breaks rendering (and may crash it)
LOD is very odd and I’m unable to find a setting that renders some of my objects with the same distance settings as on PC, the current level is simple enough that it shouldn’t be an issue but some of the stylized trees and shrubs from the marketplace that render for a longer distance on PC turn into billboards really quickly and I can’t tell exactly how to adjust that at all (played with may different LOD settings at runtime and build time to no effect)
Light baking doesn’t work on 5.6 or 5.7 on the Mac, I need to build everything on the PC and then sync the project over
Minor: are there any suggestions to get world-space UMG components to render more sharply rather than be composed with the regular scene? it isn’t terrible to have this text be pixelated and understandable since this is a game, but it is night-and-day from the super-sharp system-rendered visionOS text for sure. Any recommendations here that work would be amazing!
Minor: the Xcode version for 5.6.1 doesn’t support the latest Xcode (I see that was fixed in the branch but not released as a 5.6.2) so I had to edit files to allow that to work, fortunately that is an option that is available so less of an issue
I would love to know if any of these are known issues, I’ve filed but reports for a bunch of these (Case #’s: 23015897, 23016017, 23024010, 23125713 and 23334850) but wanted to bring attention to this more broadly. I love working in Unreal Engine but if these and other platform issues aren’t resolved and either aren’t known or planned on being worked on b/c the platform isn’t a priority, then it will make it really hard to release on the platform using UE5. Already things look great and it is quite satisfying playing on the headset with a controller and seeing things work at 90hz (haven’t tried 120hz yet) but without the layers of polish needed it is hard.
If you have any information @VictorLerp or suggestions on who to reach out to with samples that would be great!
Bump and ping to @VictorLerp in case you or anyone else can help. I know it is a lot but I hope that this platform gets a bit of love as it seems some important parts broke in the past year.
One more major bug I found only on visionOS, Mac and Windows seemed fine: level loading crashes either consistently with “Open Level” or 90% of the time when using “Load Level Instance” in blueprints which makes it impossible to safely swap levels (Case #23334850)
I thought it might be related to open level swapping game modes and the player controller but that isn’t the case. When streaming in levels there is a chance it will fail and crash regardless.
Updated the list above to add this one as well.
Resolved the level loading issue by using a persistent level and streaming levels in and out as well as invalidating timers and calling garbage collection between level loads.
Hi @vizVB 5.7.1 also renders in one eye for me. I’m using 5.6.1. There is potentially a fork that is optimized for visionOS by a company named Polyarc that would be a fork of 5.5 and 5.6 so far so that’s why I’ve stuck to 5.6 so I can maintain compatibility. 5.7.1 was just broken. I wish I knew if things are broken b/c of visionOS 26 or if it would have been broken even for the 1.x and 2.x visionOS as well.
Either way I really hope to hear some news about intended plans and fixes. Nothing in the commit logs is showing any real work towards this (maybe they are generic fixes that would happen to help visionOS). But without MSAA or SMAA everything is really pixelated.
I’d also love to see some updated documentation on how to apply overrides b/c I haven’t been able to get changes in the various Config/ files that I tried.
Can you share the link for fork by Polyarc if it is accessible.
Are there any things better than the Epic 5.6.1. Somehow my M2 Vision Pro works, but not M5 (there is no display on that even when app launches) which one have you tested on, and any tips on getting the M5 to work.
Also somehow for us the World UMG is not rendering at all unless we have something opaque behind it. Is there some setting to fix that.
@vizVB I would check the Config/*.ini files in the project directory. Maybe even create a new VR project and check those. I think I had to uncomment some stuff that was XR specific to get things working. I also had to disable AA entirely. 5.7 never fully worked for me. 5.6 didn’t until I made the config changes. I am currently testing on the M5 VP but need to go back and test on the M2 as well. It is very precarious getting things working. Right now I can run properly on Mac and Windows and visionOS but for some reason after my workarounds to get level loading properly on visionOS now iOS is broken
Will it be possible to share the config file that works on M5 vision pro. I somehow just cannot get it working on mine, including the VR Template while the same app works on M2 vision pro. I am using Epic’s 5.6.1.
Thanks for the detailed writeup. Some of these issues are known (Anti Aliasing), others are new. The short answer is that the platform is still considered experimental and we have no roadmap to take it to Beta. We do intend to fix regressions but it’s unlikely you’ll see significant improvements and new platform features implemented in the near future on Main.
Thanks for sharing the quick roadmap @VictorLerp, will it be possible to just have it work in 5.7.2 with a patch with AVP m5 or any guidance/tips to fix these.
@VictorLerp thanks for the update. I really hope we get some patches soon. While things do work they aren’t really polished compared to other platforms and even some small amount of fixing will go a long way.
@vizVB I’ll send you a private message soon with my changed configs and you can try to diff and see if that helps on your end.