Files
vb01/particle.frag
T
devZoGok e7b2d56992 spread fix
start and end size merge
2022-03-25 20:24:36 +02:00

36 lines
718 B
GLSL
Executable File

#version 330 core
in vec2 texCoords;
flat in int id;
const int numParticles = 1;
layout (location = 0) out vec4 FragColor;
layout (location = 1) out vec4 BrightColor;
struct Texture{
float mixRatio;
sampler2D pastTexture, nextTexture;
bool animated;
};
uniform Texture tex;
uniform float lifePercentage[500];
uniform vec4 startColor, endColor;
void main(){
float alpha = texture(tex.pastTexture, texCoords).r;
if(tex.animated)
alpha = mix(alpha, texture(tex.nextTexture, texCoords).r, tex.mixRatio);
vec4 c = (alpha > 0 ? mix(startColor, endColor, alpha) : vec4(0));
FragColor = c;
float brightness = dot(c.rgb, vec3(0.2126, 0.7152, 0.0722));
if(brightness > 1)
BrightColor = vec4(c.rgb, 1);
}