HumanRender/data/shader/texture.fs
2024-12-20 01:46:41 +08:00

23 lines
519 B
GLSL

#version 330 core
out vec4 FragColor;
in vec3 ourColor;
in vec2 TexCoord;
// texture sampler
uniform sampler2D background;
uniform sampler2D human;
vec4 bgr2rgb(vec4 color)
{
return vec4(color.b, color.g, color.r, color.a);
}
void main()
{
vec2 flippedTexCoords = vec2(TexCoord.x, 1.0 - TexCoord.y);
vec4 humanColor = texture(human, flippedTexCoords);
humanColor = bgr2rgb(humanColor);
vec4 backgroundColor = texture(background, flippedTexCoords);
FragColor = mix(backgroundColor, humanColor, humanColor.a);
}