// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "Hidden/Amazing Assets/Curved World/Terrain/#BEND_NAME_SMALL# ID #ID#/Utilities" { SubShader { Pass { Name "Picking" Tags { "LightMode" = "Picking" } CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma multi_compile_instancing #pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap #pragma editor_sync_compilation #include "UnityCG.cginc" #define CURVEDWORLD_BEND_TYPE_#BEND_NAME_BIG# #define CURVEDWORLD_BEND_ID_#ID# #define TERRAIN_BASE_PASS #include "../../TerrainSplatmapCommon.cginc" float4 vert(appdata_full v) : SV_POSITION { UNITY_SETUP_INSTANCE_ID(v); Input i; SplatmapVert(v, i); return UnityObjectToClipPos(v.vertex); } uniform float4 _SelectionID; fixed4 frag() : SV_Target { return _SelectionID; } ENDCG } Pass { Name "Selection" Tags { "LightMode" = "SceneSelectionPass" } Blend One Zero ZTest LEqual Cull Off ZWrite Off // push towards camera a bit, so that coord mismatch due to dynamic batching is not affecting us Offset -0.02, 0 CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma multi_compile_instancing #pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap #pragma editor_sync_compilation #include "UnityCG.cginc" #define CURVEDWORLD_BEND_TYPE_#BEND_NAME_BIG# #define CURVEDWORLD_BEND_ID_#ID# #define TERRAIN_BASE_PASS #include "../../TerrainSplatmapCommon.cginc" float4 vert(appdata_full v) : SV_POSITION { UNITY_SETUP_INSTANCE_ID(v); Input i; SplatmapVert(v, i); return UnityObjectToClipPos(v.vertex); } int _ObjectId; int _PassValue; float4 frag() : SV_Target { return float4(_ObjectId, _PassValue, 1, 1); } ENDCG } } }