diff options
Diffstat (limited to 'Assets/ProFlares/Shaders/ProFlaresBumpSpecShader.shader')
-rw-r--r-- | Assets/ProFlares/Shaders/ProFlaresBumpSpecShader.shader | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/Assets/ProFlares/Shaders/ProFlaresBumpSpecShader.shader b/Assets/ProFlares/Shaders/ProFlaresBumpSpecShader.shader deleted file mode 100644 index 53e61f1..0000000 --- a/Assets/ProFlares/Shaders/ProFlaresBumpSpecShader.shader +++ /dev/null @@ -1,95 +0,0 @@ -Shader "ProFlares/Demo/Bumped Specular" { - -Properties { - _Color ("Main Color", Color) = (1,1,1,1) - _SpecColor ("Specular Color", Color) = (0.5, 0.5, 0.5, 1) - _SpecPower ("SpecPower", Range (0.03, 2)) = 0.078125 - _Shininess ("Shininess", Range (0.03, 1)) = 0.078125 - _MainTex ("Base (RGB) Gloss (A)", 2D) = "white" {} - _SpecTex ("Spec ", 2D) = "white" {} - _BumpMap ("Normalmap", 2D) = "bump" {} -} -SubShader { - Tags { "RenderType"="Opaque" } - LOD 400 - -CGPROGRAM -#pragma surface surf BlinnPhongExtra addshadow - - -sampler2D _MainTex; -sampler2D _SpecTex; -sampler2D _BumpMap; -fixed4 _Color; -half _SpecPower; -half _Shininess; - -struct Input { - float2 uv_MainTex; - float2 uv_BumpMap; - fixed4 color : COLOR; -}; - -half4 LightingBlinnPhongExtra (SurfaceOutput s, fixed3 lightDir, half3 viewDir, fixed atten) -{ - half3 h = normalize (lightDir + viewDir); - - fixed diff = max (0, dot (s.Normal, lightDir)); - - float nh = max (0, dot (s.Normal, h)); - float spec = pow (nh, s.Specular*128.0) * s.Gloss; - - fixed4 c; - c.rgb = (s.Albedo * _LightColor0.rgb * diff + _LightColor0.rgb * _SpecColor.rgb * spec) * (atten * 2); - c.a = s.Alpha + _LightColor0.a * _SpecColor.a * spec * atten; - return c; -} - - -inline fixed4 LightingBlinnPhongExtra_PrePass (SurfaceOutput s, half4 light) -{ - fixed spec = light.a * s.Gloss; - - fixed4 c; - c.rgb = (s.Albedo * light.rgb + light.rgb * _SpecColor.rgb * spec); - c.a = s.Alpha + spec * _SpecColor.a; - return c; -} - -inline half4 LightingBlinnPhongExtra_DirLightmap (SurfaceOutput s, fixed4 color, fixed4 scale, half3 viewDir, bool surfFuncWritesNormal, out half3 specColor) -{ - UNITY_DIRBASIS - half3 scalePerBasisVector; - - half3 lm = DirLightmapDiffuse (unity_DirBasis, color, scale, s.Normal, surfFuncWritesNormal, scalePerBasisVector); - - half3 lightDir = normalize (scalePerBasisVector.x * unity_DirBasis[0] + scalePerBasisVector.y * unity_DirBasis[1] + scalePerBasisVector.z * unity_DirBasis[2]); - half3 h = normalize (lightDir + viewDir); - - float nh = max (0, dot (s.Normal, h)); - float spec = pow (nh, s.Specular * 128.0); - - // specColor used outside in the forward path, compiled out in prepass - specColor = lm * _SpecColor.rgb * s.Gloss * spec; - - // spec from the alpha component is used to calculate specular - // in the Lighting*_Prepass function, it's not used in forward - return half4(lm, spec); -} - - - -void surf (Input IN, inout SurfaceOutput o) { - fixed4 tex = tex2D(_MainTex, IN.uv_MainTex)*IN.color; - fixed4 spec = tex2D(_SpecTex, IN.uv_MainTex)*IN.color; - o.Albedo = tex.rgb * _Color.rgb; - o.Gloss = spec.r; - o.Alpha = tex.a * _Color.a; - o.Specular = tex.a;//_Shininess*_SpecPower; - o.Normal = UnpackNormal(tex2D(_BumpMap, IN.uv_BumpMap)); -} -ENDCG -} - -FallBack "Specular" -}
\ No newline at end of file |