2025-04-15 Nodes & Physics Module Meeting

Check the overview thread for more information about the meeting.

Present

  • Jacques Lucke
  • Hans Goudey
  • Raiko
  • Mattias Fredriksson
  • Cartesian Caramel
  • Lukas Tönne
  • Simon Thommes
  • Quackers
  • Dalai Felinto

Since the Last Meeting

  • Align inputs and outputs in many nodes (commit).
    • We’re aiming to change sample nodes and add support for node groups soon.
  • New Set Mesh Normal node (commit)
    • Along with that, “free” normal storage option for better performance.
  • Merged bundles and closures as experimental feature (commit)
    • Unlikely that these will be exposed in experimental in 4.5.
  • Ongoing
    • Attribute Storage refactor (PR).
    • Socket structure types changes (PR).
      • To be added as an experimental option.
    • Resolving various limitations of bundles and closures, improving UX.

Meeting Topics

  • Auto node link routing demo
    • There are still more improvements to do, for example avoiding jittering in some cases while moving nodes, and avoiding link crosses in other cases.
    • Rerouting around nodes would is too unpredictable, unstable, and slow.
    • Ideally this would be just how it works rather than an option.
  • Nodes: change selected group properties and sockets in N Panel directly
    • The main compromise is that it looks like you’re changing something local when it actually could be widely/globally used.
      • Potential solutions: change just “local” things, like subtypes. That’s a bit weird though.
    • Consensus is to not add this.
    • As a compromize, we could display the group sockets when the group input or output nodes are selected inside of a group.
  • Geometry Nodes: Curve Deform
    • This is a complete replacement of the existing modifier.
    • There is a bit of mismatching behavior-- the end tangents work slightly differently.
    • Comparing performance would be interesting.
    • Consensus is that this legacy-compatible node group is a reasonable first step, with a name that makes it clear it’s replacing legacy behavior.
    • In the long run, we should have a new node group asset with a more intuitive interface.
  • Is Single Value node
    • As is, this doesn’t really work, since fields are functions, though it does help the situation that made it necessary in the curve deform node group.
    • The better solution probably has to do with adding more options for defaults.
  • Aligning geometry nodes and compositor:
    • Bundles
      • These would also be very useful for the compositor too, they should be added at some point.
    • New icon for viewer node
      • Consensus is to use the screen icon for the geometry nodes viewer.
  • Radial Tiling node
    • Jacques mentions the importance of code documentation (in addition to the existing user documentation). He will do some code review soon.
  • String to Integer
    • It should probably be a “String to Value” node with a float/integer option.
  • Grid to Points
    • Lukas keeps making this for debugging simulations. Overall it seems helpful.
    • The “Transform” and “Background” outputs can be separate, since they’re not really related to the conversion.
  • Constraint: Attribute Transform
    • The current workarounds to get attribute data to the object level are vertex parenting, etc.
    • The design we had discussed in the past was adding the ability to output non-geometry information from geometry nodes. Consensus in this meeting is that we would like to solve that more general problem first.
    • Maybe the animation module has more thoughts about whether the use case justifies this constraint beforehand.
    • The constraint should probably be as simple as possible-- the other options besides index sample could be removed.
  • Change Case node
  • Nodes to convert between cartesian/spherical coordinates
    • Best to wait for asset embedding so we can build this with a node group. There isn’t really a consensus about the design in the task anymore.
14 Likes

Words can’t describe the positive emotions I felt watching the video for this feature. Amazing work!

2 Likes

I really hope we will get at some point unified physics system: solvers for XPBD: Position-Based Simulation - MPM material point method - SPH, Flip, Apic solvers (we already have it but for geometry nodes).
So we can play with features like: dynamic fracture, smoke, fire, liquids (viscocity and different materials), granular (sand, snow), crowds (maybe this will need somekind of “offset” animation for instances), hair/fur/feathers.

And it would be interesting to see cycles having reflection caustics and “real” refraction caustics (not only shadow caustics as they are now).

You can always dream, maybe someday… maybe. :slight_smile:
But it looks good already: that blender is making progress and fast with geometry nodes <3

5 Likes

Hi, thanks for the comment and I agree with what you’re bringing up, but the meeting notes threads aren’t meant to be a place for feature requests.

4 Likes