Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenkernel/intern/displist.cc
| Show First 20 Lines • Show All 1,488 Lines • ▼ Show 20 Lines | else { | ||||
| if (geometry.has_curves()) { | if (geometry.has_curves()) { | ||||
| /* Assign the evaluated curve to the object's "data_eval". In addition to the curve_eval | /* Assign the evaluated curve to the object's "data_eval". In addition to the curve_eval | ||||
| * added to the curve here, it will also contain a copy of the original curve's data. This is | * added to the curve here, it will also contain a copy of the original curve's data. This is | ||||
| * essential, because it maintains the expected behavior for evaluated curve data from before | * essential, because it maintains the expected behavior for evaluated curve data from before | ||||
| * the CurveEval data type was introduced, when an evaluated object's curve data was just a | * the CurveEval data type was introduced, when an evaluated object's curve data was just a | ||||
| * copy of the original curve and everything else ended up in #CurveCache. */ | * copy of the original curve and everything else ended up in #CurveCache. */ | ||||
| CurveComponent &curve_component = geometry.get_component_for_write<CurveComponent>(); | CurveComponent &curve_component = geometry.get_component_for_write<CurveComponent>(); | ||||
| cow_curve.curve_eval = curves_to_curve_eval(*curve_component.get_for_read()).release(); | cow_curve.curve_eval = curve_component.get_for_read(); | ||||
| BKE_object_eval_assign_data(ob, &cow_curve.id, false); | BKE_object_eval_assign_data(ob, &cow_curve.id, false); | ||||
| } | } | ||||
| ob->runtime.geometry_set_eval = new GeometrySet(std::move(geometry)); | ob->runtime.geometry_set_eval = new GeometrySet(std::move(geometry)); | ||||
| } | } | ||||
| BKE_object_boundbox_calc_from_evaluated_geometry(ob); | BKE_object_boundbox_calc_from_evaluated_geometry(ob); | ||||
| } | } | ||||
| Show All 21 Lines | |||||