Преглед изворни кода

Fix missing decal mask in mobile renderer

(cherry picked from commit 8449331f134a8a5b771426f2a53d9a81180a0200)
Bastiaan Olij пре 2 година
родитељ
комит
82846a7e6d

+ 4 - 0
servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl

@@ -895,6 +895,10 @@ void main() {
 				break;
 				break;
 			}
 			}
 
 
+			if (!bool(decals.data[decal_index].mask & draw_call.layer_mask)) {
+				continue; //not masked
+			}
+
 			vec3 uv_local = (decals.data[decal_index].xform * vec4(vertex, 1.0)).xyz;
 			vec3 uv_local = (decals.data[decal_index].xform * vec4(vertex, 1.0)).xyz;
 			if (any(lessThan(uv_local, vec3(0.0, -1.0, 0.0))) || any(greaterThan(uv_local, vec3(1.0)))) {
 			if (any(lessThan(uv_local, vec3(0.0, -1.0, 0.0))) || any(greaterThan(uv_local, vec3(1.0)))) {
 				continue; //out of decal
 				continue; //out of decal