swwmgz_m/shaders/pp/Devascreen.fp
Marisa Kirisame 555530c164 Devastation sigil fully implemented.
Removed old ragekit shader entirely, always use alt now.
VIP powerups no longer spawn if the player has max amount.
2021-09-01 18:53:53 +02:00

35 lines
1.2 KiB
GLSL

// hateful pulses
vec2 heatdist( in vec2 uv )
{
vec2 ofs = texture(BumpTex,uv*8.-vec2(0.,.5)*timer).xy;
ofs = (ofs-.5)*2.;
ofs *= pow(length(ofs),.5);
ofs *= .025;
return ofs;
}
void main()
{
vec2 uv = TexCoord;
vec2 bresl = textureSize(InputTexture,0);
vec2 sr = vec2(1.,bresl.y/bresl.x);
// vignette fade, will be needed later
vec2 vuv = uv.xy*(1.-uv.yx)*4.;
float fade = 1.-(vuv.x*vuv.y);
fade = pow(clamp(fade-(.6-.3*pow(xtrastr,.5)),0.,1.),3.);
fade = pow(fade,.9+.2*texture(NoiseTex,vec2(timer*.05)).x-.1*xtrastr);
vec3 col = texture(InputTexture,uv+fade*heatdist(uv*sr)).rgb;
col += texture(InputTexture,uv+.001*xtrastr*texture(NoiseTex,vec2(timer*.4536,timer*.7835)).xy+fade*heatdist(uv*sr)).rgb;
col += texture(InputTexture,uv-.001*xtrastr*texture(NoiseTex,vec2(timer*.6735,timer*.4335)).xy+fade*heatdist(uv*sr)).rgb;
col *= .4*vec3(.97,.75,1.12);
col = pow(col,vec3(1.1,1.2,1.));
fade = pow(fade,.75);
col = mix(col,col-vec3(.4,.8,.3),fade*1.2);
// overlay first pulse
vec3 ovr = texture(WarpTex1,uv*2.+heatdist(uv*sr*.25)-vec2(0.,.15)*timer).rgb;
col += ovr*fade;
ovr = texture(WarpTex2,uv*2.+heatdist(uv*sr*.25)+vec2(0.,.15)*timer).rgb;
col -= ovr*fade;
FragColor = vec4(clamp(col,0.,1.),1.);
}