The Visual Effects Graph does not seem to support instancing. To repro:
- Create a new Fully Immersive App setup for project for Vision Pro (2022.3.20f1 in my case)
- Add the Visual Effects Package (14.0.10 at the moment)
- Create a Visual Effect on a GameObject
- Create a default .vfx file
- If
Allow Instancing is enabled, it the particles flicker or disappears when built to device
- Disabling
Allow Instancing it appears fine (but with an assumed big performance hit)
Building the same project to macOS desktop displays no issues
Here is a simple screenshot of two Visual Effects side by side, referencing the same Asset Template, one with instancing, one without, as a minimal reproduction. Build to device the instancing version shows the issue.
Hi @scatterco–
Yes, you’re correct -as documented, we do not support VFX Graph directly in MR Mode. And unfortunately, the lack of direct GPU access makes it unlikely we’ll ever be able to directly support this, absent an architectural change by Apple.
However, do note that you can use VFX Graph to a render texture in MR mode, then display this render texture to the user. Depending on your use case, this may prove sufficient. We’re also exploring a potential feature called “stereo render targets” which we hope will make the render texture path an even more compelling option.
As always, feel free to upvote “Stereo Render Targets” on our public roadmap if it seems useful to you and your team!
–Tim
1 Like
Thanks for the fast response, @timc-unity
To clarify I’m running this example Virtual Reality (Fully Immersive) mode - is it still the case that is not supported?
Thank you!
Ah, I’m sorry, I missed that!
Let me have one of the VR experts chime in, but in the interim, does this work on iOS?
–Tim
@timc-unity i will test on iOS when I’m back at my desk tomorrow.
I can also upload a test project to drive if that’s helpful. I’ll update this post with more info soon. Please let me know if you have more information prior to that
Thanks!
I am seeing similar VFX graph flickering/disappearing issue. In my case, the issue persists after disabling Allow Instancing. I only managed to fix it by changing particle orient in the VFX graph to not facing the camera.
This issue can only be seen on Vision Pro device, VFX graphs work fine in MacOS build or in VisionOS simulator.
1 Like
Hi @timc-unity
Here is a test project
Here is a video that shows the issue.
I tested the same project on iOS and it works fine.
Also, adding to what @vegankrabbypatty shared. I have another project where disabling instancing did not fix the flickering (the display is Cubes not Quads). Also trying the fix that @vegankrabbypatty mentions to disable billboarding and set to a fix axis doesn’t seem to make a difference in the example project.
I’m at a loss on how to diagnose since there doesn’t seem to be a consistent repro or work around. Hoping Unity folks can help.
Any updates on this from the Unity folks? Or tips on how to get around this bug at the moment? Can also submit bugs if that’s the correct process for getting it fix.
This is a major blocker to get our project on VisionOS 
It may work if setting Blend Mode to Opaque and using alpha clipping.But if there exist some objects using my custom shader in the camera view, it’s still flickering.
I managed to fix the flickering by changing the render queue of other transparent objects using my custom shader.Set a number like 3010 or 2990 to force the transparent object to render after or before the vfx particles.It seems that objects using custom shader with same render queue is not sorting automatically in AVP, but it’s fine with the built-in shader like Lit or Shader Graph.@vegankrabbypatty
1 Like
Not work with multiple transparent objects, my bad.
Dear @timc-unity , thanks for the render texture workaround suggestion. Could you please help elaborate a bit more on this topic?
I think we’ve got the general idea and made something working, but we are having some difficulty to make all things right.
Basically we want to make some particle effects compatible with vision os. By default, they either don’t show anything or if we change the particle system mode to “Bake to Mesh”, they may show up, but completely in black color.
So we try to use the render texture technique you mentioned, and it did work for some particle effects, but many others are somehow still shows complete black color. Our understanding is that using the render texture technique, the Vision Pro device should appear exactly as it does in the Unity editor window. Is this not correct?
1 Like
Is there any good solution to this problem?
We released a fix for the VFX graph flickering in 6000.0.47f1, and the next release of 2022.3 (2022.3.62) should include the fix as well.
2 Likes