diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-01-29 18:42:04 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-01-29 19:54:20 +0300 |
commit | 9577ebde79cb5deb696f70fd7d218d8b358b0263 (patch) | |
tree | e23f22ba835578dc6753848b9ef2ce8d7ab3bd6f /source/blender/makesdna | |
parent | 006c66b1ff5972c5badff7a7f53f638e27e24cd4 (diff) |
Fix T53598: OpenGL Render Animation does not update shadows
General idea of the fix: skip the whole draw manager callback madness which
was used to tag object's engine specific data as dirty. Use generic recalc
flag in ObjectEngineData structure instead. This gives us the following
benefits;
- Sovles mentioned bug report.
- Avoids whole interface lookup for opened viewports for EVERY changed ID.
- Fixes missing updates when viewport is temporarily invisible.
Reviewers: dfelinto, fclem
Differential Revision: https://developer.blender.org/D3028
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_object_types.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h index d62ec746309..7c3ef5e72be 100644 --- a/source/blender/makesdna/DNA_object_types.h +++ b/source/blender/makesdna/DNA_object_types.h @@ -86,6 +86,8 @@ typedef struct ObjectEngineData { struct DrawEngineType *engine_type; /* Only nested data, NOT the engine data itself. */ ObjectEngineDataFreeCb free; + /* Accumulated recalc flags, which corresponds to ID->recalc flags. */ + int recalc; } ObjectEngineData; #define MAX_VGROUP_NAME 64 |