| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- Shader "SpatialFramework/Textured Fresnel/Standard"
- {
- Properties
- {
- _EdgeColor("Edge Color", COLOR) = (1,1,1,1)
- _Color("Color", COLOR) = (.25,.25,.25,.25)
- _EdgeData("Edge min, max, S-strength, S-Blend", VECTOR) = (0, 0.85, 0.5, 1)
- _MainTex("Texture", 2D) = "white" {}
- }
- SubShader
- {
- // First, we do a stencil like technique of writing depth of the model,
- // so we don't have any transparent overdraw in subsequent steps
- Tags{ "RenderType" = "Transparent" "Queue" = "Transparent" }
- Pass
- {
- Tags
- {
- "RenderType" = "Transparent"
- "Queue" = "Transparent"
- "LightMode" = "UniversalForward"
- "RenderPipeline" = "UniversalPipeline"
- }
- LOD 100
- Name "Depth Fill"
- Blend One One
- Lighting Off
- ZTest Less
- Offset -1, 0
- ColorMask 0
- CGPROGRAM
- #pragma vertex vert
- #pragma fragment fragEmpty
- #include "UnityCG.cginc"
- #include "TexturedStableFresnelCommon.cginc"
- ENDCG
- }
- Pass
- {
- Tags
- {
- "RenderType" = "Transparent"
- "Queue" = "Transparent"
- "LightMode" = "Always"
- }
- LOD 100
- Name "Depth Fill"
- Blend One One
- Lighting Off
- ZWrite Off
- Offset -1, 0
- ColorMask 0
- CGPROGRAM
- #pragma vertex vert
- #pragma fragment fragEmpty
- #include "UnityCG.cginc"
- #include "TexturedStableFresnelCommon.cginc"
- ENDCG
- }
- // Next, fill in with the base and rim color
- Pass
- {
- Tags
- {
- "RenderType" = "Transparent"
- "Queue" = "Transparent"
- }
- Name "Fresnel Color"
- Blend SrcAlpha OneMinusSrcAlpha
- Lighting Off
- ZTest LEqual
- ZWrite Off
- Offset -1, 0
- CGPROGRAM
- #pragma vertex vert
- #pragma fragment fragRimShader
- #include "UnityCG.cginc"
- #include "TexturedStableFresnelCommon.cginc"
- ENDCG
- }
- }
- FallBack "Diffuse"
- }
|