diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-01-26 15:29:51 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-01-26 15:31:47 +0300 |
commit | e4c83bc3459847c33269557499cc891ed4f747af (patch) | |
tree | 2c51aaf6e8a7983649ca5252ea65ab0e88899122 /source | |
parent | 8126b0222d11e68b62f1d3d975ec6396b7e87af2 (diff) |
Fix T46679: ZMask layers don't update w/ animation
Make sure z-mask layers aren't excluded for animation evaluation.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/render/intern/source/external_engine.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c index 082c2ace241..0286aee64e8 100644 --- a/source/blender/render/intern/source/external_engine.c +++ b/source/blender/render/intern/source/external_engine.c @@ -606,7 +606,7 @@ int RE_engine_render(Render *re, int do_all) if (re->r.scemode & R_SINGLE_LAYER) { srl = BLI_findlink(&re->r.layers, re->r.actlay); if (srl) { - non_excluded_lay |= ~srl->lay_exclude; + non_excluded_lay |= ~(srl->lay_exclude & ~srl->lay_zmask); /* in this case we must update all because animation for * the scene has not been updated yet, and so may not be @@ -618,7 +618,7 @@ int RE_engine_render(Render *re, int do_all) else { for (srl = re->r.layers.first; srl; srl = srl->next) { if (!(srl->layflag & SCE_LAY_DISABLE)) { - non_excluded_lay |= ~srl->lay_exclude; + non_excluded_lay |= ~(srl->lay_exclude & ~srl->lay_zmask); if (render_layer_exclude_animated(re->scene, srl)) non_excluded_lay |= ~0; |