love-demo2/shader/flame.frag

29 lines
697 B
GLSL

#version 430 core
in vec4 PixelTexture;
layout (location = 0, binding = 0) uniform sampler2D FlameSampler;
layout (location = 1) uniform int Frame;
layout (location = 0) out vec3 Position;
layout (location = 1) out vec4 Normal;
layout (location = 2) out vec3 Color;
layout (location = 3) out vec4 Block;
const float frames = 1.0 / 4.0;
void main()
{
vec2 coord = vec2(PixelTexture.x, 1.0 - PixelTexture.y) * vec2(1, frames) + vec2(0, frames * Frame);
vec4 texture_color = texture(FlameSampler, coord);
if (texture_color.w == 0) {
discard;
return;
}
Position = vec3(0, 0, 0);
Normal = vec4(0, 0, 0, 0);
Color = vec3(texture_color.xyz);
Block = vec4(-1, -1, -1, -1);
}