| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)Shader "ProFlares/Demo/Standard 2-Sided"{	Properties	{		_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 Scale", Range(0.0, 1.0)) = 1.0		[Enum(Metallic Alpha,0,Albedo Alpha,1)] _SmoothnessTextureChannel ("Smoothness texture channel", Float) = 0		[Gamma] _Metallic("Metallic", Range(0.0, 1.0)) = 0.0		_MetallicGlossMap("Metallic", 2D) = "white" {}		[ToggleOff] _SpecularHighlights("Specular Highlights", Float) = 1.0		[ToggleOff] _GlossyReflections("Glossy Reflections", Float) = 1.0		_BumpScale("Scale", Float) = 1.0		_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		_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 MetallicSetup	ENDCG	SubShader	{		Tags { "RenderType"="Opaque" "PerformanceChecks"="False" }		LOD 300			// ------------------------------------------------------------------		//  Base forward pass (directional light, emission, lightmaps, ...)		Pass		{			Name "FORWARD" 			Tags { "LightMode" = "ForwardBase" }			Blend [_SrcBlend] [_DstBlend]			ZWrite [_ZWrite]						Cull Off			CGPROGRAM			#pragma target 3.0			// -------------------------------------			#pragma shader_feature _NORMALMAP			#pragma shader_feature _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _EMISSION			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature ___ _DETAIL_MULX2			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature _ _SPECULARHIGHLIGHTS_OFF			#pragma shader_feature _ _GLOSSYREFLECTIONS_OFF			#pragma shader_feature _PARALLAXMAP			#pragma multi_compile_fwdbase			#pragma multi_compile_fog			#pragma multi_compile_instancing			#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			Cull Off			CGPROGRAM			#pragma target 3.0			// -------------------------------------			#pragma shader_feature _NORMALMAP			#pragma shader_feature _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature _ _SPECULARHIGHLIGHTS_OFF			#pragma shader_feature ___ _DETAIL_MULX2			#pragma shader_feature _PARALLAXMAP			#pragma multi_compile_fwdadd_fullshadows			#pragma multi_compile_fog			#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 _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature _PARALLAXMAP			#pragma multi_compile_shadowcaster			#pragma multi_compile_instancing			#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 _NORMALMAP			#pragma shader_feature _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _EMISSION			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature _ _SPECULARHIGHLIGHTS_OFF			#pragma shader_feature ___ _DETAIL_MULX2			#pragma shader_feature _PARALLAXMAP			#pragma multi_compile_prepassfinal			#pragma multi_compile_instancing			#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 _EMISSION			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature ___ _DETAIL_MULX2			#pragma shader_feature EDITOR_VISUALIZATION			#include "UnityStandardMeta.cginc"			ENDCG		}	}	SubShader	{		Tags { "RenderType"="Opaque" "PerformanceChecks"="False" }		LOD 150		// ------------------------------------------------------------------		//  Base forward pass (directional light, emission, lightmaps, ...)		Pass		{			Name "FORWARD" 			Tags { "LightMode" = "ForwardBase" }			Blend [_SrcBlend] [_DstBlend]			ZWrite [_ZWrite]			Cull Off			CGPROGRAM			#pragma target 2.0						#pragma shader_feature _NORMALMAP			#pragma shader_feature _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _EMISSION 			#pragma shader_feature _METALLICGLOSSMAP 			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature _ _SPECULARHIGHLIGHTS_OFF			#pragma shader_feature _ _GLOSSYREFLECTIONS_OFF			// SM2.0: NOT SUPPORTED shader_feature ___ _DETAIL_MULX2			// SM2.0: NOT SUPPORTED shader_feature _PARALLAXMAP			#pragma skip_variants SHADOWS_SOFT DIRLIGHTMAP_COMBINED			#pragma multi_compile_fwdbase			#pragma multi_compile_fog			#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			Cull Off						CGPROGRAM			#pragma target 2.0			#pragma shader_feature _NORMALMAP			#pragma shader_feature _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature _ _SPECULARHIGHLIGHTS_OFF			#pragma shader_feature ___ _DETAIL_MULX2			// SM2.0: NOT SUPPORTED shader_feature _PARALLAXMAP			#pragma skip_variants SHADOWS_SOFT						#pragma multi_compile_fwdadd_fullshadows			#pragma multi_compile_fog						#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 _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON			#pragma shader_feature _METALLICGLOSSMAP			#pragma skip_variants SHADOWS_SOFT			#pragma multi_compile_shadowcaster			#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 _EMISSION			#pragma shader_feature _METALLICGLOSSMAP			#pragma shader_feature _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A			#pragma shader_feature ___ _DETAIL_MULX2			#pragma shader_feature EDITOR_VISUALIZATION			#include "UnityStandardMeta.cginc"			ENDCG		}	}	FallBack "VertexLit"	CustomEditor "StandardShaderGUI"}
 |