[Bf-blender-cvs] [47985f0ea0f] lanpr-under-gp: LineArt: Fix multiple calls to clearing frame when have multiple modifier on baking.

YimingWu noreply at git.blender.org
Wed Jul 15 12:58:30 CEST 2020


Commit: 47985f0ea0f3ed6b10e549f62e35d47ff68b0516
Author: YimingWu
Date:   Wed Jul 15 18:58:26 2020 +0800
Branches: lanpr-under-gp
https://developer.blender.org/rB47985f0ea0f3ed6b10e549f62e35d47ff68b0516

LineArt: Fix multiple calls to clearing frame when have multiple modifier on baking.

===================================================================

M	source/blender/editors/lineart/lineart_cpu.c

===================================================================

diff --git a/source/blender/editors/lineart/lineart_cpu.c b/source/blender/editors/lineart/lineart_cpu.c
index fcce7c25153..dcc98759974 100644
--- a/source/blender/editors/lineart/lineart_cpu.c
+++ b/source/blender/editors/lineart/lineart_cpu.c
@@ -3871,6 +3871,8 @@ static int lineart_bake_gpencil_strokes_exec(bContext *C, wmOperator *UNUSED(op)
 
     FOREACH_COLLECTION_VISIBLE_OBJECT_RECURSIVE_BEGIN (
         scene->master_collection, ob, DAG_EVAL_RENDER) {
+
+      int cleared = 0;
       if (ob->type == OB_GPENCIL) {
         LISTBASE_FOREACH (GpencilModifierData *, md, &ob->greasepencil_modifiers) {
           if (md->type == eGpencilModifierType_Lineart) {
@@ -3880,9 +3882,11 @@ static int lineart_bake_gpencil_strokes_exec(bContext *C, wmOperator *UNUSED(op)
             bGPDframe *gpf = BKE_gpencil_layer_frame_get(gpl, frame, GP_GETFRAME_ADD_NEW);
 
             /* Clear original frame */
-            if ((scene->lineart.flags & LRT_GPENCIL_OVERWRITE) && gpf->strokes.first) {
+            if ((scene->lineart.flags & LRT_GPENCIL_OVERWRITE) && gpf->strokes.first &&
+                (!cleared)) {
               BKE_gpencil_layer_frame_delete(gpl, gpf);
               gpf = BKE_gpencil_layer_frame_get(gpl, frame, GP_GETFRAME_ADD_NEW);
+              cleared = 1;
             }
 
             ED_generate_strokes_direct(



More information about the Bf-blender-cvs mailing list