2021-09-27 - 2021-10-01 Geometry Nodes Sub-Module Meetings

Info

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

Meeting Notes

  • Instancing, continued.
    • Use foreach-instance behavior? (D12630).
    • Raycast node.
      • This node should only use realized geometry.
      • All nodes that take in geometry but don’t output a modified version of that geometry.
  • Order of input sockets in raycast node (D12638).
    • Geometry should be first because it’s the most important and all other inputs are fields.
  • Go over all non-deprecated nodes one by one to see if there is anything that still needs to be done before bcon2.
  • Node menu cleanup
  • T91668: How to deal with multiple volume grids in a geometry
  • Set Handle Position:
    • Change handle type automatically like in edit mode.
      • Vector → Free
      • Auto → Align
      • Align handles stay aligned
  • Show spline type in socket inspection/spreadsheet.
    • Yup.
    • Also show spline index for control points
  • Delete Geometry node:
    • We may want to add a different Instances option in the dropdown.
    • Then the node could also operate on all instances separately like other nodes.
    • This needs some more thought and to make versioning easier later, the instance handling should just be removed entirely again for now.
  • T91646: Selection input socket position in nodes
    • Put it right after the geometry.
      • Works when there are multiple geometry inputs.
      • For procedural modelling nodes (like Extrude) the selection is the most important input after the geometry. For other nodes the selection may be less important (e.g. Distribute Points on Faces), we expect the selection to be mostly used for procedural modelling in the future.
      • The consistency keeping the nodes that describe “a part of the geometry” together is nice.
  • T91649: Built-in selection nodes
    • The idea is to provide a few basic selection nodes that cover some common use cases, it isn’t to give a complete set of useful selection nodes, since they can be easily built and shared by users.
    • Normal Selection
      • An implicit normal input, direction, and a threshold angle value (with subtype PROP_ANGLE)
    • Plane Selection
      • Implicit position input, a Origin (plane center) and plane normal input
    • Cube Selection
      • An implicit position input
      • Two modes: center and size inputs, and min and max inputs
    • These nodes should be replaced by group nodes when it is possible to ship builtin node groups with Blender.
    • These nodes have a boolean output called Selection.
  • T91648: Selection outputs in primitive nodes
    • Cone/Cylinder: Top, Bottom, Side
    • Star: Inner Points, Outer Points
  • Default behavior for merge by distance node
    • Because the difference in behavior when changing the distance input from 0 to a very small number is understandable and small, a 0 distance by default can make sense.
    • For other nodes where 0 means something special, that wouldn’t be the case.
  • Feedback about “Stable ID” and instance on points
    • People do not understand the difference between “ID” and index.
    • Using the stable ID properly is not intuitive enough. People expect it to “just work”, but currently it must be used manually.
    • Implicit index input for “Stable ID”.
    • Change implicit field input in Random Value node from “Index” to “Stable ID” (or “Random ID” or similar).
    • We will make this a built-in attribute.
  • D12715: Show hint in empty output attributes panel.
    • Make the label into an operator button
  • Modifier: “View Deprecated Geometry Nodes” operator
    • Suggestion to replace the INFO label with the operator button (using the info icon).
    • Message: “Legacy node(s) found in the node group”
  • T91851: Remove reference to “Anonymous Attribute” in socket inspection
    • Design approved, new task created.
    • Sorting criteria:
      • Geometry
      • Nodes
      • Attributes inside node
    • Then per group we sort by length (smaller to larger)

Float field based on:

  • “Group” attribute from geometry
  • “position” attribute from geometry
  • Index node
  • Material Selection node
  • “top faces” from Cube node
  • “attribute” from Attribute Capture node
  • “normal” from Distribute Points on Faces node
8 Likes