diff options
author | Antonioya <blendergit@gmail.com> | 2019-04-03 20:58:32 +0300 |
---|---|---|
committer | Antonioya <blendergit@gmail.com> | 2019-04-03 20:58:49 +0300 |
commit | aa0bb47576262b909183947815d7f626df82b35d (patch) | |
tree | 7113464b0ffdaa36a3323d1f0f7ad9331d5b41be /source | |
parent | 322abc14285e7722d98d4503c09d032cf2b22f6c (diff) |
Fix T63257: Grease Pencil renders incorrectly when in edit-mode
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenkernel/intern/gpencil_modifier.c | 6 | ||||
-rw-r--r-- | source/blender/draw/engines/gpencil/gpencil_engine.c | 2 | ||||
-rw-r--r-- | source/blender/draw/engines/gpencil/gpencil_shader_fx.c | 4 |
3 files changed, 7 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/gpencil_modifier.c b/source/blender/blenkernel/intern/gpencil_modifier.c index d09a914e23e..30bf30e2842 100644 --- a/source/blender/blenkernel/intern/gpencil_modifier.c +++ b/source/blender/blenkernel/intern/gpencil_modifier.c @@ -419,7 +419,7 @@ void BKE_gpencil_stroke_modifiers(Depsgraph *depsgraph, Object *ob, bGPDlayer *g if (GPENCIL_MODIFIER_ACTIVE(md, is_render)) { const GpencilModifierTypeInfo *mti = BKE_gpencil_modifierType_getInfo(md->type); - if (GPENCIL_MODIFIER_EDIT(md, is_edit)) { + if ((GPENCIL_MODIFIER_EDIT(md, is_edit)) && (!is_render)) { continue; } @@ -457,7 +457,7 @@ void BKE_gpencil_geometry_modifiers(Depsgraph *depsgraph, Object *ob, bGPDlayer if (GPENCIL_MODIFIER_ACTIVE(md, is_render)) { const GpencilModifierTypeInfo *mti = BKE_gpencil_modifierType_getInfo(md->type); - if (GPENCIL_MODIFIER_EDIT(md, is_edit)) { + if ((GPENCIL_MODIFIER_EDIT(md, is_edit)) && (!is_render)) { continue; } @@ -481,7 +481,7 @@ int BKE_gpencil_time_modifier(Depsgraph *depsgraph, Scene *scene, Object *ob, if (GPENCIL_MODIFIER_ACTIVE(md, is_render)) { const GpencilModifierTypeInfo *mti = BKE_gpencil_modifierType_getInfo(md->type); - if (GPENCIL_MODIFIER_EDIT(md, is_edit)) { + if ((GPENCIL_MODIFIER_EDIT(md, is_edit)) && (!is_render)) { continue; } diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.c b/source/blender/draw/engines/gpencil/gpencil_engine.c index 384f25ecaa5..1cc493dd8f5 100644 --- a/source/blender/draw/engines/gpencil/gpencil_engine.c +++ b/source/blender/draw/engines/gpencil/gpencil_engine.c @@ -550,7 +550,7 @@ static void gpencil_add_draw_data(void *vedata, Object *ob) if (!cache_ob->is_dup_ob) { /* fill shading groups */ - if (!is_multiedit) { + if ((!is_multiedit) || (stl->storage->is_render)) { DRW_gpencil_populate_datablock(&e_data, vedata, ob, cache_ob); } else { diff --git a/source/blender/draw/engines/gpencil/gpencil_shader_fx.c b/source/blender/draw/engines/gpencil/gpencil_shader_fx.c index b1bc796bfa7..1d1fe20aba9 100644 --- a/source/blender/draw/engines/gpencil/gpencil_shader_fx.c +++ b/source/blender/draw/engines/gpencil/gpencil_shader_fx.c @@ -58,7 +58,9 @@ static bool effect_is_active(bGPdata *gpd, ShaderFxData *fx, bool is_render) } bool is_edit = GPENCIL_ANY_EDIT_MODE(gpd); - if (((fx->mode & eShaderFxMode_Editmode) == 0) && (is_edit)) { + if (((fx->mode & eShaderFxMode_Editmode) == 0) && + (is_edit) && (!is_render)) + { return false; } |