[Bf-blender-cvs] [a3e5724e182] lineart-shadow: LineArt: Fix modifier apply.

YimingWu noreply at git.blender.org
Tue Jul 13 10:45:58 CEST 2021


Commit: a3e5724e182b7e3225154298fdf9106fb8535663
Author: YimingWu
Date:   Sat Jul 10 14:04:23 2021 +0800
Branches: lineart-shadow
https://developer.blender.org/rBa3e5724e182b7e3225154298fdf9106fb8535663

LineArt: Fix modifier apply.

After cache implementation line art apply will not show strokes properly, now fixed.

# Conflicts:
#	source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c

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

M	source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c

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

diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
index f42c1302522..33180884e4b 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
@@ -208,12 +208,18 @@ static void bakeModifier(Main *UNUSED(bmain),
   }
 
   if (!gpd->runtime.lineart_cache) {
-    MOD_lineart_compute_feature_lines(
-        depsgraph, lmd, &gpd->runtime.lineart_cache, (!(ob->dtx & OB_DRAW_IN_FRONT)));
+    /* Only calculate for this modifer, thus no need to get maximum values from all line art
+     * modifiers in the stack. */
+    lmd->edge_types_override = lmd->edge_types;
+    lmd->level_end_override = lmd->level_end;
+
+    MOD_lineart_compute_feature_lines(depsgraph, lmd, &gpd->runtime.lineart_cache);
     MOD_lineart_destroy_render_data(lmd);
   }
 
   generate_strokes_actual(md, depsgraph, ob, gpl, gpf);
+
+  MOD_lineart_clear_cache(&gpd->runtime.lineart_cache);
 }
 
 static bool isDisabled(GpencilModifierData *md, int UNUSED(userRenderParams))



More information about the Bf-blender-cvs mailing list