Fix T101004: Crash when invisible object becomes visible

A regression since ac20970bc2

The issue was caused by depsgraph clearing all id->recalc flags
wrongly assuming that all IDs are fully evaluated.

This change makes it so the depsgraph becomes aware of possibly
incompletely evaluated IDs.

Differential Revision: https://developer.blender.org/D15946
This commit is contained in:
2022-09-12 16:30:07 +02:00
parent a45c36efae
commit bb3a021427
6 changed files with 30 additions and 0 deletions

View File

@@ -250,6 +250,8 @@ class DepsgraphNodeBuilder : public DepsgraphBuilder {
IDComponentsMask previously_visible_components_mask;
/* Special evaluation flag mask from the previous depsgraph. */
uint32_t previous_eval_flags;
/* Recalculation flags which were not evaluated for the ID in the previous depsgraph. */
int id_invisible_recalc;
/* Mesh CustomData mask from the previous depsgraph. */
DEGCustomDataMeshMasks previous_customdata_masks;
};