[Bf-blender-cvs] [18ecdde3593] cycles_texture_cache: Merge branch 'master' into cycles_texture_cache

Stefan Werner noreply at git.blender.org
Fri May 21 15:47:44 CEST 2021


Commit: 18ecdde3593a0f0405667679bbd2eb2069c6a691
Author: Stefan Werner
Date:   Fri May 14 23:04:10 2021 +0200
Branches: cycles_texture_cache
https://developer.blender.org/rB18ecdde3593a0f0405667679bbd2eb2069c6a691

Merge branch 'master' into cycles_texture_cache

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



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

diff --cc source/blender/nodes/geometry/nodes/node_geo_point_instance.cc
index 7929a5a1546,6f66f2145fa..f47ae42947f
--- a/source/blender/nodes/geometry/nodes/node_geo_point_instance.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_point_instance.cc
@@@ -185,21 -203,34 +203,39 @@@ static void geo_node_point_instance_exe
     * rather than making the entire input geometry set real. */
    geometry_set = geometry_set_realize_instances(geometry_set);
  
+   const Vector<InstanceReference> possible_references = get_instance_references(params);
+   if (possible_references.is_empty()) {
+     params.set_output("Geometry", std::move(geometry_set_out));
+     return;
+   }
+ 
    InstancesComponent &instances = geometry_set_out.get_component_for_write<InstancesComponent>();
+   Array<int> possible_handles = add_instance_references(instances, possible_references);
+ 
    if (geometry_set.has<MeshComponent>()) {
-     add_instances_from_geometry_component(
-         instances, *geometry_set.get_component_for_read<MeshComponent>(), params);
+     add_instances_from_component(instances,
+                                  *geometry_set.get_component_for_read<MeshComponent>(),
+                                  possible_handles,
+                                  params);
    }
    if (geometry_set.has<PointCloudComponent>()) {
-     add_instances_from_geometry_component(
-         instances, *geometry_set.get_component_for_read<PointCloudComponent>(), params);
+     add_instances_from_component(instances,
+                                  *geometry_set.get_component_for_read<PointCloudComponent>(),
+                                  possible_handles,
+                                  params);
+   }
+   if (geometry_set.has<CurveComponent>()) {
+     add_instances_from_component(instances,
+                                  *geometry_set.get_component_for_read<CurveComponent>(),
+                                  possible_handles,
+                                  params);
    }
  
 +  if (geometry_set.has<CurveComponent>()) {
 +    add_instances_from_geometry_component(
 +        instances, *geometry_set.get_component_for_read<CurveComponent>(), params);
 +  }
 +
    params.set_output("Geometry", std::move(geometry_set_out));
  }



More information about the Bf-blender-cvs mailing list