From 0b32c89c2619e44818cfbc86efc87ae96157de85 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Thu, 13 Feb 2025 15:40:23 +0500 Subject: [PATCH] use_smooth - use correct buffer length apparently it wasn't creating any issues but still creating larger buffer than necessary --- src/bonsai/bonsai/tool/loader.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/bonsai/bonsai/tool/loader.py b/src/bonsai/bonsai/tool/loader.py index 75aa1b04d2..cb16446c5a 100644 --- a/src/bonsai/bonsai/tool/loader.py +++ b/src/bonsai/bonsai/tool/loader.py @@ -1048,7 +1048,7 @@ class Loader(bonsai.core.tool.Loader): if is_triangulated: loop_start = np.arange(0, num_vertex_indices, 3, dtype="I") loop_total = np.full(total_faces, 3, dtype="I") - use_smooth = np.zeros(num_vertex_indices, dtype="?") + use_smooth = np.zeros(total_faces, dtype="?") mesh.loops.add(num_vertex_indices) mesh.loops.foreach_set("vertex_index", faces.ravel().astype("I")) @@ -1058,14 +1058,15 @@ class Loader(bonsai.core.tool.Loader): mesh.polygons.foreach_set("use_smooth", use_smooth) else: faces_array = np.array(geometry.faces, dtype=object) + total_faces = len(faces_array) loop_total = np.fromiter((len(face) for face in faces_array), dtype="I") loop_start = np.cumsum((0,) + loop_total, dtype="I")[:-1] vertex_index = np.concatenate(faces_array, dtype="I", casting="unsafe") - use_smooth = np.zeros(num_vertex_indices, dtype="?") + use_smooth = np.zeros(total_faces, dtype="?") mesh.loops.add(len(vertex_index)) mesh.loops.foreach_set("vertex_index", vertex_index) - mesh.polygons.add(len(loop_start)) + mesh.polygons.add(total_faces) mesh.polygons.foreach_set("loop_start", loop_start) mesh.polygons.foreach_set("loop_total", loop_total) mesh.polygons.foreach_set("use_smooth", use_smooth)