diff options
author | m-pranav-r <darthsreepa@protonmail.com> | 2024-10-17 19:07:19 +0530 |
---|---|---|
committer | m-pranav-r <darthsreepa@protonmail.com> | 2024-10-23 08:38:56 +0530 |
commit | fcea158927225f05105d36794de3ba0fffeeccb5 (patch) | |
tree | b0a0404fe84f89e12b1b466f33bebd8bab6702ee | |
parent | b3bcb2dc14691f7729984128dca26a844f662fa1 (diff) | |
download | redot-engine-fcea158927225f05105d36794de3ba0fffeeccb5.tar.gz |
Fixed light culling mask behavior in Mobile and Compat renderers
-rw-r--r-- | servers/rendering/renderer_scene_cull.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/servers/rendering/renderer_scene_cull.cpp b/servers/rendering/renderer_scene_cull.cpp index ca07444465..ad39faad17 100644 --- a/servers/rendering/renderer_scene_cull.cpp +++ b/servers/rendering/renderer_scene_cull.cpp @@ -3036,6 +3036,10 @@ void RendererSceneCull::_scene_cull(CullData &cull_data, InstanceCullResult &cul for (const Instance *E : geom->lights) { InstanceLightData *light = static_cast<InstanceLightData *>(E->base_data); + if (!(RSG::light_storage->light_get_cull_mask(E->base) & idata.layer_mask)) { + continue; + } + instance_pair_buffer[idx++] = light->instance; if (idx == MAX_INSTANCE_PAIRS) { break; |