1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-07-22 17:18:39 +00:00

Clip posteffect color to respective nodes

This commit is contained in:
DS 2022-07-15 02:18:11 +02:00 committed by Desour
parent 5aeaf20849
commit 07b17760ba
21 changed files with 883 additions and 105 deletions

View file

@ -5,6 +5,9 @@ uniform lowp vec4 fogColor;
uniform float fogDistance;
uniform float fogShadingParameter;
// Only used for the wieldhand. 0 otherwise.
uniform vec4 wield_posteffect_color;
// The cameraOffset is the current center of the visible world.
uniform highp vec3 cameraOffset;
uniform float animationTimer;
@ -458,5 +461,12 @@ void main(void)
col = mix(fogColor * pow(fogColor / fogColorMax, vec4(2.0 * clarity)), col, clarity);
col = vec4(col.rgb, base.a);
// Apply posteffect color for the wieldhand, by blending it above this
// fragment.
// The alpha channel is not blended. The posteffect geometry behind the
// wieldhand already makes the image less transparent.
// wield_posteffect_color.rgb is premultiplied.
col.rgb = col.rgb * (1.0 - wield_posteffect_color.a) + wield_posteffect_color.rgb;
gl_FragData[0] = col;
}