| 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"
 
- }
 
 
  |