#version 300 es
precision highp float;

in vec2 TexCoord;
out vec4 FragColor;
in float alpha_r;
in float alpha_g;
in float alpha_b;
in float current_index;
in float timeval;
in float alpha;
in vec3 vpos;
in vec4 optx_val;
uniform vec4 optx;
in vec4 random_value;
uniform vec4 random_var;
uniform float alpha_value;

uniform mat4 mv_matrix;
uniform mat4 proj_matrix;
uniform sampler2D textTexture;
uniform float value_alpha_r, value_alpha_g, value_alpha_b;
uniform float index_value;
uniform float time_f;

uniform float restore_black;
in float restore_black_value;

void main(void)
{
    if(restore_black_value == 1.0 && texture(textTexture, TexCoord) == vec4(0, 0, 0, 1))
        discard;
    FragColor = texture(textTexture, TexCoord);
    float value = fract(timeval);
    if(value >= 0 && value <= 0.3) {
        FragColor[0] *= value;
    } else if (value >= 0.3 && value <= 0.6) {
        FragColor[1] *= value;
    } else if(value >= 0.6 && value <= 1.0) {
        FragColor[2] *= value;
    }
    
    FragColor = FragColor * (alpha/2);
}



