forked from blender/blender
davidhaver-WIP-realize-depth #3
@ -12,7 +12,7 @@ namespace blender::geometry {
|
|||||||
bke::GeometrySet join_geometries(Span<bke::GeometrySet> geometries,
|
bke::GeometrySet join_geometries(Span<bke::GeometrySet> geometries,
|
||||||
const bke::AnonymousAttributePropagationInfo &propagation_info);
|
const bke::AnonymousAttributePropagationInfo &propagation_info);
|
||||||
|
|
||||||
void join_transform_instance_components(Span<const bke::InstancesComponent *> src_components,
|
void join_transform_instance_components(const Span<const bke::GeometryComponent *> src_components,
|
||||||
Span<blender::float4x4> src_base_transforms,
|
Span<blender::float4x4> src_base_transforms,
|
||||||
bke::GeometrySet &result);
|
bke::GeometrySet &result);
|
||||||
}
|
}
|
||||||
|
@ -1679,10 +1679,11 @@ bke::GeometrySet realize_instances(bke::GeometrySet geometry_set,
|
|||||||
gather_realize_tasks_recursive(gather_info, 0, -1, geometry_set, transform, attribute_fallbacks);
|
gather_realize_tasks_recursive(gather_info, 0, -1, geometry_set, transform, attribute_fallbacks);
|
||||||
|
|
||||||
Vector<bke::GeometrySet> geometries_to_merge;
|
Vector<bke::GeometrySet> geometries_to_merge;
|
||||||
|
Vector<const bke::GeometryComponent *> component_to_merge;
|
||||||
for (const auto &instances_component : gather_info.instances_components_to_merge) {
|
for (const auto &instances_component : gather_info.instances_components_to_merge) {
|
||||||
// Assuming InstancesComponent is implicitly convertible to GeometryComponent
|
// Assuming InstancesComponent is implicitly convertible to GeometryComponent
|
||||||
const bke::GeometryComponent *geometry_component = static_cast<const bke::GeometryComponent *>(instances_component);
|
const bke::GeometryComponent *geometry_component = static_cast<const bke::GeometryComponent *>(instances_component);
|
||||||
|
component_to_merge.append(geometry_component);
|
||||||
// Create a new GeometrySet and add the geometry component to it
|
// Create a new GeometrySet and add the geometry component to it
|
||||||
bke::GeometrySet new_geometry_se;
|
bke::GeometrySet new_geometry_se;
|
||||||
new_geometry_se.add(*geometry_component);
|
new_geometry_se.add(*geometry_component);
|
||||||
@ -1690,7 +1691,7 @@ bke::GeometrySet realize_instances(bke::GeometrySet geometry_set,
|
|||||||
// Add the new GeometrySet to the Vector
|
// Add the new GeometrySet to the Vector
|
||||||
geometries_to_merge.append(new_geometry_se);
|
geometries_to_merge.append(new_geometry_se);
|
||||||
}
|
}
|
||||||
join_transform_instance_components(gather_info.instances_components_to_merge, gather_info.instances_components_transforms, new_geometry_set);
|
join_transform_instance_components(component_to_merge, gather_info.instances_components_transforms, new_geometry_set);
|
||||||
// new_geometry_set = geometry::join_geometries(geometries_to_merge, options.propagation_info);
|
// new_geometry_set = geometry::join_geometries(geometries_to_merge, options.propagation_info);
|
||||||
|
|
||||||
execute_realize_pointcloud_tasks(options,
|
execute_realize_pointcloud_tasks(options,
|
||||||
|
Loading…
Reference in New Issue
Block a user