// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' Shader "Hidden/AstarPathfindingProject/Navmesh" { Properties { _Color ("Main Color", Color) = (1,1,1,0.5) _MainTex ("Texture", 2D) = "white" { } _Scale ("Scale", float) = 1 _FadeColor ("Fade Color", Color) = (1,1,1,0.3) } SubShader { Pass { ZWrite On ColorMask 0 } Tags {"Queue"="Transparent+1" "IgnoreProjector"="True" "RenderType"="Transparent"} LOD 200 Offset -2, -20 Cull Off Pass { ZWrite Off ZTest Greater Blend SrcAlpha OneMinusSrcAlpha CGPROGRAM #pragma vertex vert #pragma fragment frag #include "UnityCG.cginc" #include "Navmesh.cginc" sampler2D _MainTex; float _Scale; float4 _Color; float4 _FadeColor; struct v2f { float4 pos : SV_POSITION; float2 uv : TEXCOORD0; float4 col : COLOR; }; float4 _MainTex_ST; v2f vert (appdata_color v) { v2f o; o.pos = UnityObjectToClipPos (v.vertex); float4 worldSpace = mul (unity_ObjectToWorld, v.vertex); o.uv = float2 (worldSpace.x*_Scale,worldSpace.z*_Scale); o.col = v.color * _Color * _FadeColor; if (!IsGammaSpaceCompatibility()) { o.col.rgb = GammaToLinearSpace(o.col.rgb); } return o; } float4 frag (v2f i) : COLOR { return tex2D (_MainTex, i.uv) * i.col; } ENDCG } Pass { ZWrite Off ZTest LEqual Blend SrcAlpha OneMinusSrcAlpha CGPROGRAM #pragma vertex vert #pragma fragment frag #include "UnityCG.cginc" #include "Navmesh.cginc" float4 _Color; sampler2D _MainTex; float _Scale; struct v2f { float4 pos : SV_POSITION; float2 uv : TEXCOORD0; float4 col : COLOR; }; v2f vert (appdata_color v) { v2f o; o.pos = UnityObjectToClipPos (v.vertex); float4 worldSpace = mul (unity_ObjectToWorld, v.vertex); o.uv = float2 (worldSpace.x*_Scale,worldSpace.z*_Scale); o.col = v.color * _Color; if (!IsGammaSpaceCompatibility()) { o.col.rgb = GammaToLinearSpace(o.col.rgb); } return o; } float4 frag (v2f i) : COLOR { return tex2D (_MainTex, i.uv) * i.col; } ENDCG } } Fallback Off }