Mercurial > hg > Game > Games
diff Orchestland/Assets/LeapMotion/Materials/Sources/Shaders/Toony-Lighted.shader @ 1:f7675884f2a1
Add Orchestland project
author | Daiki OYAKAWA <e135764@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 17 Jul 2015 23:09:20 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Orchestland/Assets/LeapMotion/Materials/Sources/Shaders/Toony-Lighted.shader Fri Jul 17 23:09:20 2015 +0900 @@ -0,0 +1,53 @@ +Shader "Toon/Lighted" { + Properties { + _Color ("Main Color", Color) = (0.5,0.5,0.5,1) + _MainTex ("Base (RGB)", 2D) = "white" {} + _Ramp ("Toon Ramp (RGB)", 2D) = "gray" {} + } + + SubShader { + Tags { "RenderType"="Opaque" } + LOD 200 + +CGPROGRAM +#pragma surface surf ToonRamp + +sampler2D _Ramp; + +// custom lighting function that uses a texture ramp based +// on angle between light direction and normal +#pragma lighting ToonRamp exclude_path:prepass +inline half4 LightingToonRamp (SurfaceOutput s, half3 lightDir, half atten) +{ + #ifndef USING_DIRECTIONAL_LIGHT + lightDir = normalize(lightDir); + #endif + + half d = dot (s.Normal, lightDir)*0.5 + 0.5; + half3 ramp = tex2D (_Ramp, float2(d,d)).rgb; + + half4 c; + c.rgb = s.Albedo * _LightColor0.rgb * ramp * (atten * 2); + c.a = 0; + return c; +} + + +sampler2D _MainTex; +float4 _Color; + +struct Input { + float2 uv_MainTex : TEXCOORD0; +}; + +void surf (Input IN, inout SurfaceOutput o) { + half4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color; + o.Albedo = c.rgb; + o.Alpha = c.a; +} +ENDCG + + } + + Fallback "Diffuse" +}