fteqw/engine/shaders/vulkan/defaultwarp.glsl

38 lines
787 B
GLSL

!!permu FOG
!!cvarf r_wateralpha
!!cvarb r_fog_exp2=true
!!argf alpha=0
!!samps diffuse
#include "sys/defs.h"
//this is the shader that's responsible for drawing default q1 turbulant water surfaces
//this is expected to be moderately fast.
#include "sys/fog.h"
layout(location=0) varying vec2 tc;
#ifdef VERTEX_SHADER
void main ()
{
tc = v_texcoord.st;
#ifdef FLOW
tc.s += e_time * -0.5;
#endif
gl_Position = ftetransform();
}
#endif
#ifdef FRAGMENT_SHADER
void main ()
{
vec2 ntc;
ntc.s = tc.s + sin(tc.t+e_time)*0.125;
ntc.t = tc.t + sin(tc.s+e_time)*0.125;
vec3 ts = vec3(texture2D(s_diffuse, ntc));
if (arg_alpha != 0.0)
gl_FragColor = fog4(vec4(ts, arg_alpha));
else
gl_FragColor = fog4(vec4(ts, cvar_r_wateralpha));
}
#endif