summaryrefslogtreecommitdiff
path: root/VRCSDK3Worlds/Assets/Bakery/ftSimpleVertexLM.shader
diff options
context:
space:
mode:
Diffstat (limited to 'VRCSDK3Worlds/Assets/Bakery/ftSimpleVertexLM.shader')
-rw-r--r--VRCSDK3Worlds/Assets/Bakery/ftSimpleVertexLM.shader92
1 files changed, 92 insertions, 0 deletions
diff --git a/VRCSDK3Worlds/Assets/Bakery/ftSimpleVertexLM.shader b/VRCSDK3Worlds/Assets/Bakery/ftSimpleVertexLM.shader
new file mode 100644
index 00000000..bcae7fc5
--- /dev/null
+++ b/VRCSDK3Worlds/Assets/Bakery/ftSimpleVertexLM.shader
@@ -0,0 +1,92 @@
+Shader "Bakery/Simple Vertex Lightmapped"
+{
+ Properties
+ {
+ _MainTex ("Texture", 2D) = "white" {}
+ _Color ("Color", Color) = (1,1,1,1)
+ }
+ SubShader
+ {
+ Tags { "RenderType"="Opaque" }
+ LOD 100
+
+ Pass
+ {
+ CGPROGRAM
+ #pragma vertex vert
+ #pragma fragment frag
+ // make fog work
+ #pragma multi_compile_fog
+
+ #include "UnityCG.cginc"
+
+ struct appdata
+ {
+ float4 vertex : POSITION;
+ float2 uv : TEXCOORD0;
+ float4 color : COLOR0;
+ };
+
+ struct v2f
+ {
+ float2 uv : TEXCOORD0;
+ UNITY_FOG_COORDS(1)
+ float3 color : TEXCOORD2;
+ float4 vertex : SV_POSITION;
+ };
+
+ sampler2D _MainTex;
+ float4 _MainTex_ST;
+ float3 _Color;
+
+ v2f vert (appdata v)
+ {
+ v2f o;
+ o.vertex = UnityObjectToClipPos(v.vertex);
+ o.uv = TRANSFORM_TEX(v.uv, _MainTex);
+ UNITY_TRANSFER_FOG(o,o.vertex);
+
+ // Decode baked HDR vertex color (RGBM)
+ o.color = v.color.rgb * v.color.a * 8.0;
+ o.color *= o.color;
+
+ return o;
+ }
+
+ fixed4 frag (v2f i) : SV_Target
+ {
+ float4 color = tex2D(_MainTex, i.uv);
+ color.rgb *= _Color;
+
+ // Apply vertex lightmap
+ color.rgb *= i.color;
+
+ UNITY_APPLY_FOG(i.fogCoord, color);
+ return color;
+ }
+ ENDCG
+ }
+
+ Pass
+ {
+ Name "META"
+ Tags {"LightMode"="Meta"}
+ Cull Off
+ CGPROGRAM
+
+ #include"UnityStandardMeta.cginc"
+
+ float4 frag_meta2 (v2f_meta i): SV_Target
+ {
+ UnityMetaInput o;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, o);
+ o.Albedo = tex2D(_MainTex, i.uv) * _Color;
+ return UnityMetaFragment(o);
+ }
+
+ #pragma vertex vert_meta
+ #pragma fragment frag_meta2
+ ENDCG
+ }
+ }
+}