Переглянути джерело

Fix regression in baked lights when using GLES2

Lights with bake mode set to "All" were behaving erratically because of a
faulty check in the renderer. This should be the correct way to check if
a geometry instance is using baked light.
jfons 4 роки тому
батько
коміт
69939028b3
1 змінених файлів з 1 додано та 1 видалено
  1. 1 1
      drivers/gles2/rasterizer_scene_gles2.cpp

+ 1 - 1
drivers/gles2/rasterizer_scene_gles2.cpp

@@ -2300,7 +2300,7 @@ void RasterizerSceneGLES2::_render_render_list(RenderList::Element **p_elements,
 
 			if (!unshaded && e->light_index < RenderList::MAX_LIGHTS) {
 				light = render_light_instances[e->light_index];
-				if (e->light_mode == LightMode::LIGHTMODE_LIGHTMAP && light->light_ptr->bake_mode == VS::LIGHT_BAKE_ALL) {
+				if (e->instance->baked_light && light->light_ptr->bake_mode == VS::LIGHT_BAKE_ALL) {
 					light = NULL; // Don't use this light, it is already included in the lightmap
 				}
 			}