I’m using HDRP, Single Pass Instancing w/ Oculus’ XR Management plugin and an Oculus Quest w/ Link cable.
My UI (world space render mode) only draws in one eye when single pass instancing is enabled. Draws in both eyes with Multi Pass.
Any easy fix for this?
Hate to be the “me too guy”, but me too.
Got some results using the solution described here:
But it seems to be limited for more complex UI.
For now i’m turning off instancing.
Unity fix pls?
1 Like
hi,
i’ve came across this also in the URP. i found these forum posts and they suggested to put the canvas element in the “center eye” in tracking space of oculus’s camera rig prefab. see this: (LWRP) UI not displayed on Oculus Quest
hope this helps,
const
ltomov
December 14, 2021, 12:58pm
5
I had the same issue, turned out one of these UI elements was using a custom shader. The custom shaders need to be modified as described here in order to support single pass instanced:
Once the modification was done, the problem disappeared.
2 Likes
ltomov:
I had the same issue, turned out one of these UI elements was using a custom shader. The custom shaders need to be modified as described here in order to support single pass instanced:
https://docs.unity3d.com/Manual/SinglePassInstancing.html
Once the modification was done, the problem disappeared.
While custom shaders do certainly need updating, I’ve now started encountering this issue despite not having a custom shader on any of the offending UI elements.
It also looks as though the world space canvases camera reference gets cleared when pressing play. (2022.1.15f1 and URP 13.1.8)
Edit: I’ve just as a test overwritten the ‘Default/UI’ shader with the ‘Universal Render Pipeline/2D/Sprite-Unlit’ shader and it fixes the issue. Looks like the UI & TMPro shaders didn’t fully update despite re-importing them.
I just had this issue with a clean install of Unity 2022.1.20f1 using the 3D URP pipeline, OpenXR and using a Valve Index. All the GUI elements would show in the left eye, floating around and displaying fisheye.
The previous version of my project was in 2022.1.8f1 and did not experience this issue with the same setup.
These are the steps that worked in my instance.
First make sure Edit->Project Settings->Graphics->Scriptable Render Pipeline Settings is set to something other than none, I used URP-Balanced
Close the project, exit Unity.
Go to the projects directory and delete all the sub directories/files under these directories. They will be rebuilt when you restart.
[ProjectName]/Library/PackageCache
[ProjectName]/Library/ScriptAssemblies
[ProjectName]/Library/ShaderCache
Now load in your project, let it rebuild and see if it fixes it.
Hope it helps anyone else who experienced this.
17 Likes
VRStudy:
I just had this issue with a clean install of Unity 2022.1.20f1 using the 3D URP pipeline, OpenXR and using a Valve Index. All the GUI elements would show in the left eye, floating around and displaying fisheye.
The previous version of my project was in 2022.1.8f1 and did not experience this issue with the same setup.
These are the steps that worked in my instance.
First make sure Edit->Project Settings->Graphics->Scriptable Render Pipeline Settings is set to something other than none, I used URP-Balanced
Close the project, exit Unity.
Go to the projects directory and delete all the sub directories/files under these directories. They will be rebuilt when you restart.
[ProjectName]/Library/PackageCache
[ProjectName]/Library/ScriptAssemblies
[ProjectName]/Library/ShaderCache
Now load in your project, let it rebuild and see if it fixes it.
Hope it helps anyone else who experienced this.
This works with Unity 2021.3.20, URP, and Oculus Integration Package. I have multiple cameras for URP (from https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@7.2/manual/cameras-multiple.html ) and one of the cameras only renders to the left eye. This solution works great! Thanks!!!
q8sr
April 19, 2023, 3:26pm
9
VRStudy:
I just had this issue with a clean install of Unity 2022.1.20f1 using the 3D URP pipeline, OpenXR and using a Valve Index. All the GUI elements would show in the left eye, floating around and displaying fisheye.
The previous version of my project was in 2022.1.8f1 and did not experience this issue with the same setup.
These are the steps that worked in my instance.
First make sure Edit->Project Settings->Graphics->Scriptable Render Pipeline Settings is set to something other than none, I used URP-Balanced
Close the project, exit Unity.
Go to the projects directory and delete all the sub directories/files under these directories. They will be rebuilt when you restart.
[ProjectName]/Library/PackageCache
[ProjectName]/Library/ScriptAssemblies
[ProjectName]/Library/ShaderCache
Now load in your project, let it rebuild and see if it fixes it.
Hope it helps anyone else who experienced this.
This fix also worked for me (2022.1.23f1). What a life saver, thanks @VRStudy !
VRStudy:
I just had this issue with a clean install of Unity 2022.1.20f1 using the 3D URP pipeline, OpenXR and using a Valve Index. All the GUI elements would show in the left eye, floating around and displaying fisheye.
The previous version of my project was in 2022.1.8f1 and did not experience this issue with the same setup.
These are the steps that worked in my instance.
First make sure Edit->Project Settings->Graphics->Scriptable Render Pipeline Settings is set to something other than none, I used URP-Balanced
Close the project, exit Unity.
Go to the projects directory and delete all the sub directories/files under these directories. They will be rebuilt when you restart.
[ProjectName]/Library/PackageCache
[ProjectName]/Library/ScriptAssemblies
[ProjectName]/Library/ShaderCache
Now load in your project, let it rebuild and see if it fixes it.
Hope it helps anyone else who experienced this.
Thanks a lot mate <3, it worked for me (2022.1.22f1)
Edit > Project Settings > XP Plugin Management > Open XR > Render Mode = Multi Pass.
Apparently, world space canvas will not work properly in Single Pass Instanced rendering mode for VR.
1 Like
I encountered a similar problem, and it turned out that one of the UI elements was utilizing a customized shader.https://www.skysmotor.co.uk/
Qleenie
August 30, 2023, 11:38am
13
LaneFox:
Edit > Project Settings > XP Plugin Management > Open XR > Render Mode = Multi Pass.
Apparently, world space canvas will not work properly in Single Pass Instanced rendering mode for VR.
World space canvas does work fine in HDRP / Single Pass Instanced.
VRStudy:
I just had this issue with a clean install of Unity 2022.1.20f1 using the 3D URP pipeline, OpenXR and using a Valve Index. All the GUI elements would show in the left eye, floating around and displaying fisheye.
The previous version of my project was in 2022.1.8f1 and did not experience this issue with the same setup.
These are the steps that worked in my instance.
First make sure Edit->Project Settings->Graphics->Scriptable Render Pipeline Settings is set to something other than none, I used URP-Balanced
Close the project, exit Unity.
Go to the projects directory and delete all the sub directories/files under these directories. They will be rebuilt when you restart.
[ProjectName]/Library/PackageCache
[ProjectName]/Library/ScriptAssemblies
[ProjectName]/Library/ShaderCache
Now load in your project, let it rebuild and see if it fixes it.
Hope it helps anyone else who experienced this.
This fixed it for me in 2022.3.25f1. Thank you. It seems like it’s deleting those directories in Library/ that fixes it.
This did not work for me, but clearing it in-editor did. If someone is in the same situation (I had this issue with URP):
Go to Project Settings > Graphics
Optionally assign a new RP on the top or skip this step
Press Clearbutton next to Currently Tracked section.
Worked like a charm