2022-03-21 - 2022-04-22 Geometry Nodes Sub-Module Meetings


Developers or artists interested in contributing are welcome to join at the links below.

Week of 2022-04-18

  • T96455: Drawing of evaluated curves
    • Varying segment count
      • The conversion to triangles by the render engine relies on the fact that there are the same number of segments in each curve
      • This may work for hair, but it doesn’t work for curves, since the use case is more general
      • Evaluating curves with the same number of segments in batches, and adding padding at the end where necessary should work.
        • The padding points can be added at the same position as the last point for each curve
      • Since all curves potentially have a unique segment count, grouping curves with similar point counts together makes sense.
        • All curves with less than 4 points, less than 8, less than 16, etc.
    • Curve types
      • The render engine (i.e. EEVEE/Workbench) just gets a buffer of the final evaluated points, so it doesn’t matter how they are generated.
      • Each curve type could have a separate shader, though some of the shader code could be shared.
      • Goal is to support evaluating Bezier curves and Catmull Rom curves on the GPU, and support drawing poly curves. NURBS curves can be evaluated on the CPU for now.
  • T91742: Named Attribute Nodes
    • In which cases should we show the info about an attribute used in the modifier’s node group?
      • In some cases like where an attribute is created and removed in the same node group, there is no dependency as long as the name was not used.
      • Showing information for those cases is technically redundant and might make it harder to hide the sub-panel in the future when that’s possible.
      • However, the “suggested” answer for that use case is anonymous attributes rather than named attributes, and using a heuristic to not display some attributes is relatively complicated.
      • Conclusion: Show all used named attributes for now. In the future we could avoid displaying attributes in some cases if users really don’t care about seeing them.

Week of 2022-04-11

Week of 2022-04-04

  • Some discussion about the “hair layers” use case, i.e. node-based vs. a stack-like approach with modifiers. No conclusions yet.
  • Curves add menu
    • Use “Curves” at the top level to make the goals of the project clear and to avoid the wrong “Hair” name sticking more than it already is.
    • Curves > Empty Hair

Week of 2022-03-28

Week of 2022-03-21


Booleans with 2 curves 3D curves? I am guessing this would carry across to nurbs? Just getting 2D curves operational this way to start with would be incredible.

I’m guessing you’re referring to this?

  • Masks should be floats rather than booleans

In that case “boolean” refers to the attribute data type rather than the operation, we were discussing how masks/selections should be stored for sculpt mode.


Hope Fill Curve n-gons do not leave any edge, Extrude Mesh will bar those egda into face, Bevel after several structures will appear serious breakage

Even with Solidify there is still damage

Most of that is just a matter of using the extrude node’s selection input to only extrude the edges you want (try using the edge neighbors node).

I was thinking more like Intersect Union Difference

Animated Boolean Curve Test

1 Like

This is a pretty interesting node setup Curve 2D Boolean Geometry Nodes - #19 by kiriri

Thanks for sharing this. Have you looked into the Inkscape code baes and spoken with any of the devs there, they may have a few ideas about this?


Inkscape chat can be found at this link: chat.inkscape.org