[Bf-blender-cvs] [abaec1f83ba] lineart-shadow: LineArt: Fix loading.

YimingWu noreply at git.blender.org
Mon May 23 10:22:07 CEST 2022


Commit: abaec1f83bac21ce3b35b44ba576fb3c78467fb3
Author: YimingWu
Date:   Mon May 23 16:09:23 2022 +0800
Branches: lineart-shadow
https://developer.blender.org/rBabaec1f83bac21ce3b35b44ba576fb3c78467fb3

LineArt: Fix loading.

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

M	source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c

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

diff --git a/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c b/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
index 1db17f810da..d364975dc46 100644
--- a/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
+++ b/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
@@ -2365,10 +2365,18 @@ static void lineart_geometry_object_load(LineartObjectInfo *ob_info,
       la_edge->v2 = &la_v_arr[loose_data.loose_array[i]->v2];
       la_edge->flags = LRT_EDGE_FLAG_LOOSE;
       la_edge->object_ref = orig_ob;
+      la_edge->from_shadow = (LineartEdge *)LRT_EDGE_IDENTIFIER(ob_info, la_edge);
       BLI_addtail(&la_edge->segments, la_seg);
       if (usage == OBJECT_LRT_INHERIT || usage == OBJECT_LRT_INCLUDE ||
           usage == OBJECT_LRT_NO_INTERSECTION) {
         lineart_add_edge_to_array_thread(ob_info, la_edge);
+        if (shadow_eln) {
+          LineartEdge *shadow_e = lineart_find_matching_edge(shadow_eln,
+                                                             (uint64_t)la_edge->from_shadow);
+          if (shadow_e) {
+            lineart_register_shadow_cuts(re_buf, la_edge, shadow_e);
+          }
+        }
       }
       la_edge++;
       la_seg++;



More information about the Bf-blender-cvs mailing list