14
2017
[Shader] Draw World Space UI Always On Top

If you want to draw UI in VR (for example Google Cardboard), it doesn’t support ScreenSpace rendermode in canvas..
So all the UI’s are using WorldSpace RenderMode.. which causes issues when UI goes behind geometry.
Fix: You can modify UI shader to disable ZTest
Shader source: (tested with 5.6.0b3)
https://github.com/UnityCommunity/UnityLibrary/blob/master/Assets/Shaders/2D/UI/UI_Always_On_Top.shader
*Only one line was modified from original UI shader,
// From
ZTest [unity_GUIZTestMode]
// To
ZTest Off
Related Posts
6 Comments + Add Comment
Leave a comment
Recent posts
- Adding Real World Location to Ice Fishing Prototype
- [web tool] Image Channel Inspector : AlphaScope
- Editor Tool: Smart Recompile (don’t recompile if edit comments)
- Editor Tool: Scene Size Analyzer
- LudumDare 60: Old Tech
- uBasic Scripting Language for Unity
- GreaseMonkey+Editor Plugin: 1-Click Copy script from ChatGPT (Web) to Unity Editor (as script)
- Editor Tool: Property Watcher
- .unityignore : Hide files from Project window
- PostBuild Script to Create Single exe Standalone File
- Game Loop Designer
- Favorites in PackageManager
Recent Comments
Coin:
CUgDSbRqFcAumDSAcdKDvuXsw26VdkJe8C8WGUQHBAGS
An article by












Just when I need it ! Thank you 🙂
I’ve put it on all “Image” and “Text” components of my UI. Is there a way to replace the default UI shader by this one ?
Yes, i believe if you rename the shader as: Shader “UI/Default”
then it might override the built-in one..
so I just added this to my project, I didn’t even attach it to anything and it fixed the shadow on top of my world space ui problem I was having.
Don’t understand how thats possible. But Im just gonna go with it.
I cannot find the shader.
Fixed link now
Thanks mate!