uniform vec2 iResolution;
uniform float iTime;

uniform sampler2D gm_BaseTexture;

uniform bool gm_PS_FogEnabled;
uniform vec4 gm_FogColour;
uniform bool gm_AlphaTestEnabled;
uniform float gm_AlphaRefValue;

void DoAlphaTest(vec4 SrcColour)
{
	if (gm_AlphaTestEnabled)
	{
		if (SrcColour.a <= gm_AlphaRefValue)
		{
			discard;
		}
	}
}

void DoFog(inout vec4 SrcColour, float fogval)
{
	if (gm_PS_FogEnabled)
	{
		SrcColour = mix(SrcColour, gm_FogColour, clamp(fogval, 0.0, 1.0)); 
	}
}

#define _YY_GLSL_ 1
///https://www.shadertoy.com/view/WsSXzt

varying vec2 fragCoord; 
void main()
{
    vec2 fragCoord = openfl_TextureCoordv * iResolution;
    vec2 uv = (fragCoord - 0.5 * iResolution.xy) / iResolution.y;  
    vec2 gv = uv * 50.0 ;
    gv = fract(gv) - 0.5;
    float t = iTime * 5.0;
    float s = (sin(t - length(uv * 2.0) * 5.0) * 0.4 + 0.5) * 0.6;
    float m = smoothstep(s, s - 0.05, length(gv)) + s*2.0;
    vec3 col = vec3(s, 0.0, 0.5) * m;
    gl_FragColor = vec4(col, 1.0);
}