[Bf-blender-cvs] [33edef15ed4] master: Fix T104095: missing crazy space data while sculpting curves
Jacques Lucke
noreply at git.blender.org
Tue Jan 24 14:08:57 CET 2023
Commit: 33edef15ed405281debe6bc81ae822daff25bbf4
Author: Jacques Lucke
Date: Tue Jan 24 14:06:43 2023 +0100
Branches: master
https://developer.blender.org/rB33edef15ed405281debe6bc81ae822daff25bbf4
Fix T104095: missing crazy space data while sculpting curves
`remember_deformed_curve_positions_if_necessary` has to be called before
topology changing operations on curves. Otherwise the crazy-space data
is invalid.
===================================================================
M source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc
M source/blender/nodes/geometry/nodes/node_geo_realize_instances.cc
===================================================================
diff --git a/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc b/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc
index d49f2583bde..18a662289aa 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc
@@ -192,6 +192,10 @@ static void node_geo_exec(GeoNodeExecParams params)
const AnonymousAttributePropagationInfo &propagation_info = params.get_output_propagation_info(
"Geometry");
+ for (GeometrySet &geometry : geometry_sets) {
+ GeometryComponentEditData::remember_deformed_curve_positions_if_necessary(geometry);
+ }
+
GeometrySet geometry_set_result;
join_component_type<MeshComponent>(geometry_sets, geometry_set_result, propagation_info);
join_component_type<PointCloudComponent>(geometry_sets, geometry_set_result, propagation_info);
diff --git a/source/blender/nodes/geometry/nodes/node_geo_realize_instances.cc b/source/blender/nodes/geometry/nodes/node_geo_realize_instances.cc
index 385b47a2f1e..18311e9ca58 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_realize_instances.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_realize_instances.cc
@@ -34,6 +34,7 @@ static void node_geo_exec(GeoNodeExecParams params)
}
GeometrySet geometry_set = params.extract_input<GeometrySet>("Geometry");
+ GeometryComponentEditData::remember_deformed_curve_positions_if_necessary(geometry_set);
geometry::RealizeInstancesOptions options;
options.keep_original_ids = legacy_behavior;
options.realize_instance_attributes = !legacy_behavior;
More information about the Bf-blender-cvs
mailing list