Browse Source

Merge pull request #11959 from hi-ogawa/fix-shadow-atlas-invalidation

Track LightInstance::shadow_atlases so that it will be freed properly
Andreas Haas 8 years ago
parent
commit
dda64a3de6
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/gles3/rasterizer_scene_gles3.cpp

+ 2 - 0
drivers/gles3/rasterizer_scene_gles3.cpp

@@ -379,6 +379,7 @@ bool RasterizerSceneGLES3::shadow_atlas_update_light(RID p_atlas, RID p_light_in
 			sh->owner = p_light_intance;
 			sh->alloc_tick = tick;
 			sh->version = p_light_version;
+			li->shadow_atlases.insert(p_atlas);
 
 			//make new key
 			key = new_quadrant << ShadowAtlas::QUADRANT_SHIFT;
@@ -414,6 +415,7 @@ bool RasterizerSceneGLES3::shadow_atlas_update_light(RID p_atlas, RID p_light_in
 		sh->owner = p_light_intance;
 		sh->alloc_tick = tick;
 		sh->version = p_light_version;
+		li->shadow_atlases.insert(p_atlas);
 
 		//make new key
 		uint32_t key = new_quadrant << ShadowAtlas::QUADRANT_SHIFT;