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
- Game Loop Designer
- Favorites in PackageManager
- LudumDare59 : Signal
- Unity Editor: Tree Generator
- Leaf/Foliage Generator Tools (Runs in Browser)
- Testing Unity AI Beta
- Ways to Support UnityCoder Development
- Using UI Slider to Create 5-Star Rating Element
- Game Music Library For Unity (editor plugin)
- Fontastic : Easily Test Fonts in Unity Editor!
- GeoTiff Importer & Terrain Generator for Unity
- Create Baked DropShadow for UI images
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!