Blender Git Commit Log

Git Commits -> Revision 8e2c9f2

Revision 8e2c9f2 by Jacques Lucke (master)
December 14, 2021, 14:40 (GMT)
Geometry Nodes: simplify using selection when evaluating fields

We often had to use two `FieldEvaluator` instances to first evaluate
the selection and then the remaining fields. Now both can be done
with a single `FieldEvaluator`. This results in less boilerplate code in
many cases.

Performance is not affected by this change. In a separate patch we
could improve performance by reusing evaluated sub-fields that are
used by the selection and the other fields.

Differential Revision: https://developer.blender.org/D13571

Commit Details:

Full Hash: 8e2c9f2dd3118bfdb69ccf0ab2b9f968a854aae4
Parent Commit: b44a500
Lines Changed: +180, -173

19 Modified Paths:

/source/blender/functions/FN_field.hh (+17, -0) (Diff)
/source/blender/functions/intern/field.cc (+33, -5) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_distribute_points_on_faces.cc (+4, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_instances_to_points.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_instance_on_points.cc (+16, -17) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_mesh_to_points.cc (+9, -11) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_rotate_instances.cc (+11, -13) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_scale_instances.cc (+10, -12) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_curve_handles.cc (+8, -11) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_curve_radius.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_curve_tilt.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_id.cc (+8, -10) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_material_index.cc (+5, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_point_radius.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_position.cc (+9, -12) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_shade_smooth.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_spline_cyclic.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_set_spline_resolution.cc (+6, -8) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_translate_instances.cc (+8, -10) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021