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