416 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			416 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								// Curved World <http://u3d.as/1W8h>
							 | 
						||
| 
								 | 
							
								// Copyright (c) Amazing Assets <https://amazingassets.world>
							 | 
						||
| 
								 | 
							
								 
							 | 
						||
| 
								 | 
							
								Shader "Amazing Assets/Curved World/Standard (Specular setup)"
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    Properties
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								[HideInInspector][CurvedWorldBendSettings]	  _CurvedWorldBendSettings("0|1|1", Vector) = (0, 0, 0, 0)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[HideInInspector][MaterialEnum(Front,2,Back,1,Both,0)] _Cull("Face Cull", Int) = 0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _Color("Color", Color) = (1,1,1,1)
							 | 
						||
| 
								 | 
							
								        _MainTex("Albedo", 2D) = "white" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _Cutoff("Alpha Cutoff", Range(0.0, 1.0)) = 0.5
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _Glossiness("Smoothness", Range(0.0, 1.0)) = 0.5
							 | 
						||
| 
								 | 
							
								        _GlossMapScale("Smoothness Factor", Range(0.0, 1.0)) = 1.0
							 | 
						||
| 
								 | 
							
								        [Enum(Specular Alpha,0,Albedo Alpha,1)] _SmoothnessTextureChannel ("Smoothness texture channel", Float) = 0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _SpecColor("Specular", Color) = (0.2,0.2,0.2)
							 | 
						||
| 
								 | 
							
								        _SpecGlossMap("Specular", 2D) = "white" {}
							 | 
						||
| 
								 | 
							
								        [ToggleOff] _SpecularHighlights("Specular Highlights", Float) = 1.0
							 | 
						||
| 
								 | 
							
								        [ToggleOff] _GlossyReflections("Glossy Reflections", Float) = 1.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _BumpScale("Scale", Float) = 1.0
							 | 
						||
| 
								 | 
							
								        [Normal] _BumpMap("Normal Map", 2D) = "bump" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _Parallax ("Height Scale", Range (0.005, 0.08)) = 0.02
							 | 
						||
| 
								 | 
							
								        _ParallaxMap ("Height Map", 2D) = "black" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _OcclusionStrength("Strength", Range(0.0, 1.0)) = 1.0
							 | 
						||
| 
								 | 
							
								        _OcclusionMap("Occlusion", 2D) = "white" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _EmissionColor("Color", Color) = (0,0,0)
							 | 
						||
| 
								 | 
							
								        _EmissionMap("Emission", 2D) = "white" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _DetailMask("Detail Mask", 2D) = "white" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        _DetailAlbedoMap("Detail Albedo x2", 2D) = "grey" {}
							 | 
						||
| 
								 | 
							
								        _DetailNormalMapScale("Scale", Float) = 1.0
							 | 
						||
| 
								 | 
							
								        [Normal] _DetailNormalMap("Normal Map", 2D) = "bump" {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        [Enum(UV0,0,UV1,1)] _UVSec ("UV Set for secondary textures", Float) = 0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        // Blending state
							 | 
						||
| 
								 | 
							
								        [HideInInspector] _Mode ("__mode", Float) = 0.0
							 | 
						||
| 
								 | 
							
								        [HideInInspector] _SrcBlend ("__src", Float) = 1.0
							 | 
						||
| 
								 | 
							
								        [HideInInspector] _DstBlend ("__dst", Float) = 0.0
							 | 
						||
| 
								 | 
							
								        [HideInInspector] _ZWrite ("__zw", Float) = 1.0
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    CGINCLUDE
							 | 
						||
| 
								 | 
							
								        #define UNITY_SETUP_BRDF_INPUT SpecularSetup
							 | 
						||
| 
								 | 
							
								    ENDCG
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    SubShader
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        Tags { "RenderType"="CurvedWorld_Opaque" "PerformanceChecks"="False" }
							 | 
						||
| 
								 | 
							
								        LOD 300
							 | 
						||
| 
								 | 
							
								        Cull[_Cull]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Base forward pass (directional light, emission, lightmaps, ...)
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "FORWARD"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "ForwardBase" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            Blend [_SrcBlend] [_DstBlend]
							 | 
						||
| 
								 | 
							
								            ZWrite [_ZWrite]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 3.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            // -------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _NORMALMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_fragment _EMISSION
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _GLOSSYREFLECTIONS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _PARALLAXMAP
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fwdbase
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fog
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_instancing
							 | 
						||
| 
								 | 
							
								            // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
							 | 
						||
| 
								 | 
							
								            //#pragma multi_compile _ LOD_FADE_CROSSFADE
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertBase
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragBase
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardCoreForward.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Additive forward pass (one light per pass)
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "FORWARD_DELTA"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "ForwardAdd" }
							 | 
						||
| 
								 | 
							
								            Blend [_SrcBlend] One
							 | 
						||
| 
								 | 
							
								            Fog { Color (0,0,0,0) } // in additive pass fog should be black
							 | 
						||
| 
								 | 
							
								            ZWrite Off
							 | 
						||
| 
								 | 
							
								            ZTest LEqual
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 3.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            // -------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _NORMALMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _PARALLAXMAP
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fwdadd_fullshadows
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fog
							 | 
						||
| 
								 | 
							
								            // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
							 | 
						||
| 
								 | 
							
								            //#pragma multi_compile _ LOD_FADE_CROSSFADE
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertAdd
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragAdd
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardCoreForward.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Shadow rendering pass
							 | 
						||
| 
								 | 
							
								        Pass {
							 | 
						||
| 
								 | 
							
								            Name "ShadowCaster"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "ShadowCaster" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ZWrite On ZTest LEqual
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 3.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            // -------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _PARALLAXMAP
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_shadowcaster
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_instancing
							 | 
						||
| 
								 | 
							
								            // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
							 | 
						||
| 
								 | 
							
								            //#pragma multi_compile _ LOD_FADE_CROSSFADE
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertShadowCaster
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragShadowCaster
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardShadow.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Deferred pass
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "DEFERRED"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "Deferred" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 3.0
							 | 
						||
| 
								 | 
							
								            #pragma exclude_renderers nomrt
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            // -------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _NORMALMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_fragment _EMISSION
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _PARALLAXMAP
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_prepassfinal
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_instancing
							 | 
						||
| 
								 | 
							
								            // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
							 | 
						||
| 
								 | 
							
								            //#pragma multi_compile _ LOD_FADE_CROSSFADE
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertDeferred
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragDeferred
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardCore.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        // Extracts information for lightmapping, GI (emission, albedo, ...)
							 | 
						||
| 
								 | 
							
								        // This pass it not used during regular rendering.
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "META"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode"="Meta" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            Cull Off
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma vertex vert_meta
							 | 
						||
| 
								 | 
							
								            #pragma fragment frag_meta
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_fragment _EMISSION
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature EDITOR_VISUALIZATION
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardMeta.cginc"
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    SubShader
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        Tags { "RenderType"="CurvedWorld_Opaque" "PerformanceChecks"="False" }
							 | 
						||
| 
								 | 
							
								        LOD 150
							 | 
						||
| 
								 | 
							
								        Cull[_Cull]
							 | 
						||
| 
								 | 
							
								        
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Base forward pass (directional light, emission, lightmaps, ...)
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "FORWARD"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "ForwardBase" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            Blend [_SrcBlend] [_DstBlend]
							 | 
						||
| 
								 | 
							
								            ZWrite [_ZWrite]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 2.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _NORMALMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_fragment _EMISSION
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _GLOSSYREFLECTIONS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            // SM2.0: NOT SUPPORTED shader_feature_local _PARALLAXMAP
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma skip_variants SHADOWS_SOFT DYNAMICLIGHTMAP_ON DIRLIGHTMAP_COMBINED
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fwdbase
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fog
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertBase
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragBase
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardCoreForward.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Additive forward pass (one light per pass)
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "FORWARD_DELTA"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "ForwardAdd" }
							 | 
						||
| 
								 | 
							
								            Blend [_SrcBlend] One
							 | 
						||
| 
								 | 
							
								            Fog { Color (0,0,0,0) } // in additive pass fog should be black
							 | 
						||
| 
								 | 
							
								            ZWrite Off
							 | 
						||
| 
								 | 
							
								            ZTest LEqual
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 2.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _NORMALMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            // SM2.0: NOT SUPPORTED shader_feature_local _PARALLAXMAP
							 | 
						||
| 
								 | 
							
								            #pragma skip_variants SHADOWS_SOFT
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fwdadd_fullshadows
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_fog
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertAdd
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragAdd
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardCoreForward.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        //  Shadow rendering pass
							 | 
						||
| 
								 | 
							
								        Pass {
							 | 
						||
| 
								 | 
							
								            Name "ShadowCaster"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode" = "ShadowCaster" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ZWrite On ZTest LEqual
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma target 2.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma skip_variants SHADOWS_SOFT
							 | 
						||
| 
								 | 
							
								            #pragma multi_compile_shadowcaster
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_TYPE_CLASSICRUNNER_X_POSITIVE
							 | 
						||
| 
								 | 
							
								#define CURVEDWORLD_BEND_ID_1
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_DISABLED_ON
							 | 
						||
| 
								 | 
							
								#pragma shader_feature_local CURVEDWORLD_NORMAL_TRANSFORMATION_ON
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma vertex vertShadowCaster
							 | 
						||
| 
								 | 
							
								            #pragma fragment fragShadowCaster
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardShadow.cginc"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // ------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								        // Extracts information for lightmapping, GI (emission, albedo, ...)
							 | 
						||
| 
								 | 
							
								        // This pass it not used during regular rendering.
							 | 
						||
| 
								 | 
							
								        Pass
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            Name "META"
							 | 
						||
| 
								 | 
							
								            Tags { "LightMode"="Meta" }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            Cull Off
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CGPROGRAM
							 | 
						||
| 
								 | 
							
								            #pragma vertex vert_meta
							 | 
						||
| 
								 | 
							
								            #pragma fragment frag_meta
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_fragment _EMISSION
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local _SPECGLOSSMAP
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature_local_fragment _DETAIL_MULX2
							 | 
						||
| 
								 | 
							
								            #pragma shader_feature EDITOR_VISUALIZATION
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            #include "UnityStandardMeta.cginc"
							 | 
						||
| 
								 | 
							
								            ENDCG
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    FallBack "Hidden/Amazing Assets/Curved World/Fallback/VertexLit"
							 | 
						||
| 
								 | 
							
								    CustomEditor "AmazingAssets.CurvedWorld.Editor.StandardShaderGUI"
							 | 
						||
| 
								 | 
							
								}
							 |