Looking-Glass/Assets/VRTemplateAssets/Shaders/TexturedFresnelStandard.shader

103 lines
2.4 KiB
Plaintext
Raw Normal View History

2024-02-02 12:54:47 +01:00
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"
}