Blender Git Commit Log

Git Commits -> Revision f81bacd

Revision f81bacd by Hans Goudey (master)
September 16, 2021, 17:25 (GMT)
Geometry Nodes: Transfer attributes in the curve to mesh node

This patch allows point and spline attributes to be transferred to the
mesh generated by the curve to mesh node. All dynamic named and
anonymous attributes are transferred. So a user-created attribute will
be transferred, but "radius", "tilt" or the handle position attributes
won't be transferred by default and will need to be copied first.
This trade-off is made for performance, since most of the time, users
won't need these attributes copied.

Generally, attributes are transferred to the point/vertex domain.
However, if they have the same name as a built-in mesh attribute that
only exists on a different domain, like "shade_smooth", then they can
be transferred directly to that domain as well. Conversion directly to
the face corner domain is not necessary because there are no builtin
face corner attributes. I see this conversion directly to other domains
as an optimization we could use behind the scenes in the future as well,
when named attributes are less common.

For performance, I haven't tested which of the following is better:
```
for each spline combination:
for each attribute:

for each attribute:
for each spline combination:
```
For now I used the existing loop to avoid more threading overhead.

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

Commit Details:

Full Hash: f81bacd6f0fc8d9afb46570e1a66c4469185d8a5
Parent Commit: ddb7cb7
Lines Changed: +452, -57

1 Modified Path:

/source/blender/nodes/geometry/nodes/node_geo_curve_to_mesh.cc (+452, -57) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021