stop ui from clipping wall

//put this in a material and attach it to your UI 


Shader "UI/Default_OverlayNoZTest" {	
 	Properties
    {
    	[PerRendererData] _MainTex("Sprite Texture", 2D) = "white" {}
    	_Color ("Tint", Color) = (1,1,1,1)
    	_StencilComp ("Stencil Comparison", Float) = 8
    	_Stencil ("Stencil ID", Float) = 0
    	_StencilOp ("Stencil Operation", Float) = 0
   		_StencilWriteMask ("Stencil Write Mask", Float) = 255
    	_StencilReadMask ("Stencil Read Mask", Float) = 255
    	_ColorMask ("Color Mask", Float) = 15
    }
    SubShader
    {         
    	Tags         
    	{
        	"Queue"="Overlay"
            "IgnoreProjector"="True"
            "RenderType"="Transparent"
            "PreviewType"="Plane"
            "CanUseSpriteAtlas"="True"
            }
            Stencil
            {
            	Ref [_Stencil]
                Comp [_StencilComp]
                Pass [_StencilOp]
                ReadMask [_StencilReadMask]
                WriteMask [_StencilWriteMask]
            }
            Cull Off
            Lighting Off
            ZWrite Off
            ZTest Off
            Blend SrcAlpha OneMinusSrcAlpha
            ColorMask [_ColorMask]
            Pass         
            {         
            	CGPROGRAM             
                #pragma vertex vert             
                #pragma fragment frag             
                #include "UnityCG.cginc"
                struct appdata_t
                {                 
                	float4 vertex   : POSITION;
                    float4 color    : COLOR;
                    float2 texcoord : TEXCOORD0;
                };
                struct v2f
                {
                	float4 vertex   : SV_POSITION;
                    fixed4 color    : COLOR;
                    half2 texcoord  : TEXCOORD0;
                };
                fixed4 _Color;
                v2f vert(appdata_t IN)
                {
                	v2f OUT;
                	OUT.vertex = mul(UNITY_MATRIX_MVP, IN.vertex);
                	OUT.texcoord = IN.texcoord; #ifdef UNITY_HALF_TEXEL_OFFSET
                	OUT.vertex.xy += (_ScreenParams.zw-1.0)*float2(-1,1); #endif
                	OUT.color = IN.color * _Color;
                	return OUT;
                }              
                sampler2D _MainTex;
                fixed4 frag(v2f IN) : SV_Target
                {                 
                	half4 color = tex2D(_MainTex, IN.texcoord) * IN.color;
                    clip (color.a - 0.01);
                    return color;
                }
                ENDCG
                }
            }
        }

Are there any code examples left?
Made with love
This website uses cookies to make IQCode work for you. By using this site, you agree to our cookie policy

Welcome Back!

Sign up to unlock all of IQCode features:
  • Test your skills and track progress
  • Engage in comprehensive interactive courses
  • Commit to daily skill-enhancing challenges
  • Solve practical, real-world issues
  • Share your insights and learnings
Create an account
Sign in
Recover lost password
Or log in with

Create a Free Account

Sign up to unlock all of IQCode features:
  • Test your skills and track progress
  • Engage in comprehensive interactive courses
  • Commit to daily skill-enhancing challenges
  • Solve practical, real-world issues
  • Share your insights and learnings
Create an account
Sign up
Or sign up with
By signing up, you agree to the Terms and Conditions and Privacy Policy. You also agree to receive product-related marketing emails from IQCode, which you can unsubscribe from at any time.
Creating a new code example
Code snippet title
Source