Blender Git Loki
Git Commits -> Revision 003fad9
Revision 003fad9 by Hans Goudey (geometry-nodes-curve-to-points-node) June 8, 2021, 22:32 (GMT) |
Geometry Nodes: Curve to Points Node This node implements the second option of T87429, creating points along the input splines with the necessary evaluated information for instancing: `tangent`, `normal`, and `rotation` attributes. All generic curve point and spline attributes are copied to the result points as well. I'm actually quite happy with the implementation right now. It's readable enough and there isn't too much boilerplate code. The thing I expect could use improvement is that there is a lot of temporary memory allocation. Sharing a buffer for each thread would be a nice improvement in the future. The patch currently includes some refactoring of the curve resample node with some newly abstracted functions. I may commit that separately. The "Evaluated" mode for the resample node will be a separate commit. Differential Revision: https://developer.blender.org/D11539 |
Commit Details:
Full Hash: 003fad9431656a0252a675eba31ceda3772a6673
Parent Commit: 22ee056
Lines Changed: +509, -49
1 Added Path:
/source/blender/nodes/geometry/nodes/node_geo_curve_to_points.cc (+388, -0) (View)
11 Modified Paths:
/release/scripts/startup/nodeitems_builtins.py (+1, -0) (Diff)
/source/blender/blenkernel/BKE_node.h (+1, -0) (Diff)
/source/blender/blenkernel/BKE_spline.hh (+26, -0) (Diff)
/source/blender/blenkernel/intern/node.cc (+1, -0) (Diff)
/source/blender/blenkernel/intern/spline_base.cc (+33, -0) (Diff)
/source/blender/makesdna/DNA_node_types.h (+6, -0) (Diff)
/source/blender/makesrna/intern/rna_nodetree.c (+32, -0) (Diff)
/source/blender/nodes/CMakeLists.txt (+1, -0) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc (+18, -49) (Diff)
/source/blender/nodes/NOD_geometry.h (+1, -0) (Diff)
/source/blender/nodes/NOD_static_types.h (+1, -0) (Diff)
/source/blender/blenkernel/BKE_node.h (+1, -0) (Diff)
/source/blender/blenkernel/BKE_spline.hh (+26, -0) (Diff)
/source/blender/blenkernel/intern/node.cc (+1, -0) (Diff)
/source/blender/blenkernel/intern/spline_base.cc (+33, -0) (Diff)
/source/blender/makesdna/DNA_node_types.h (+6, -0) (Diff)
/source/blender/makesrna/intern/rna_nodetree.c (+32, -0) (Diff)
/source/blender/nodes/CMakeLists.txt (+1, -0) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc (+18, -49) (Diff)
/source/blender/nodes/NOD_geometry.h (+1, -0) (Diff)
/source/blender/nodes/NOD_static_types.h (+1, -0) (Diff)