diff options
author | Hans Goudey <h.goudey@me.com> | 2021-09-28 20:14:13 +0300 |
---|---|---|
committer | Hans Goudey <h.goudey@me.com> | 2021-09-28 20:14:13 +0300 |
commit | 262b2118565826177133013c324212c66d882456 (patch) | |
tree | 0be55bc95b3c79c712642aa6157f194baf54785a /release/scripts | |
parent | 797064544ea3e176c511f7ff7c1303498a783182 (diff) |
Geometry Nodes: Mesh Point Cloud Conversion Nodes
This commit adds nodes to do direct conversion between meshes and point
clouds in geometry nodes. The conversion from mesh to points is helpful
to instance once per face, or once per edge, which was previously only
possibly with ugly work-arounds. Fields can be evaluated on the mesh
to pass them to the points with the attribute capture node.
The other conversion, point cloud to mesh vertices, is a bit less
obvious, though it is still a common request from users. It's helpful
for flexibility when passing data around, better visualization in the
viewport (and in the future, cycles), and the simplicity of points.
This is a step towards T91754, where point clouds are currently
combined with meshes when outputing to the next modifier after geometry
nodes. Since we're removing the implicit behavior for realizing
instances, it feels natural to use an explicit node to convert points
to vertices too.
Differential Revision: https://developer.blender.org/D12657
Diffstat (limited to 'release/scripts')
-rw-r--r-- | release/scripts/startup/nodeitems_builtins.py | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/release/scripts/startup/nodeitems_builtins.py b/release/scripts/startup/nodeitems_builtins.py index 2c13d4eac9b..d1f1cfef682 100644 --- a/release/scripts/startup/nodeitems_builtins.py +++ b/release/scripts/startup/nodeitems_builtins.py @@ -582,6 +582,7 @@ geometry_node_categories = [ NodeItem("GeometryNodeBoolean"), NodeItem("GeometryNodeTriangulate"), NodeItem("GeometryNodeMeshSubdivide"), + NodeItem("GeometryNodePointsToVertices", poll=geometry_nodes_fields_poll), ]), GeometryNodeCategory("GEO_PRIMITIVES_MESH", "Mesh Primitives", items=[ NodeItem("GeometryNodeMeshCircle"), @@ -594,6 +595,7 @@ geometry_node_categories = [ NodeItem("GeometryNodeMeshUVSphere"), ]), GeometryNodeCategory("GEO_POINT", "Point", items=[ + NodeItem("GeometryNodeMeshToPoints", poll=geometry_nodes_fields_poll), NodeItem("GeometryNodeInstanceOnPoints", poll=geometry_nodes_fields_poll), NodeItem("GeometryNodeDistributePointsOnFaces", poll=geometry_nodes_fields_poll), NodeItem("GeometryNodeLegacyPointDistribute", poll=geometry_nodes_fields_legacy_poll), |