Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorAntonioya <blendergit@gmail.com>2019-04-03 20:58:32 +0300
committerAntonioya <blendergit@gmail.com>2019-04-03 20:58:49 +0300
commitaa0bb47576262b909183947815d7f626df82b35d (patch)
tree7113464b0ffdaa36a3323d1f0f7ad9331d5b41be /source
parent322abc14285e7722d98d4503c09d032cf2b22f6c (diff)
Fix T63257: Grease Pencil renders incorrectly when in edit-mode
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/gpencil_modifier.c6
-rw-r--r--source/blender/draw/engines/gpencil/gpencil_engine.c2
-rw-r--r--source/blender/draw/engines/gpencil/gpencil_shader_fx.c4
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;
}