rj-action-library/Runtime/Reallusion/Shaders/CCEyeOcclusion.gdshader

25 lines
588 B
Plaintext

shader_type spatial;
render_mode blend_mul, cull_back, unshaded;
uniform vec4 shadowTopColor : source_color;
uniform vec4 shadowBottomColor: source_color;
uniform float opacity: hint_range(0, 5) = 1;
uniform float scaling: hint_range(0, 5) = 1;
void vertex()
{
VERTEX += NORMAL * 0.001;
}
void fragment()
{
vec4 mixedColor = mix( shadowTopColor, shadowBottomColor, UV.y );
float d = scaling * length ( UV - vec2( 0.5, 0.5 ) ) / length( vec2( 0.5, 0.5 ));
ALPHA *= min( 1.0, mixedColor.a * opacity * d * 0.7);
ALBEDO = mix( mixedColor.rgb, vec3( 1 ), 1.0 - ALPHA );
}