Geometry Nodes -- Fields and Related Features
First, some general positive feedback about the new Fields feature in GN. I love it!
Yesterday I upgraded my local 3.0 Alpha to the new 3.0 Beta, and this was my first exposure to Fields as they replace Attributes.
The workflow takes a bit of acclimation because the notion of a reversed control flow (i.e., "callbacks") is counter-intuitive on a node graph. Callbacks are intuitive to me as a programmer but it's a new concept on a node graph. Nonetheless, I think this is an excellent design pattern and worth the learning curve.
Honestly, one of the learning challenges for me has been that so many things about Fields "just work" that I find myself making a problem harder than it needs to be, at first. :)
The standout feature for my workflows, though, is the new ability to instance geometry instead of just an external object or collection. This is the answer to my prayers, if by "prayer" you mean the feature I most ardently requested on this venue. :) The clouds have parted, the sun smiles down, and Life Is Good!
The only workflow that I have found problematic (to learn -- I am sure GN can do it, but I haven't figured out how yet) is to select geometry based on a modified (but identically sequenced) input stream and then apply the selection to an unmodified version of the same geometry.
For example, I needed to determine which points of two geometries are in theiir contact volume, but considering only the XY plane and disregarding Z. My first draft approach uses a Transform to scale the two input geometries by (1,1,0), then I use Geometry Proximity to check each against the other. This yields the desired points on the flattened copies, but it's not obvious how to extract the ID numbers from that selection and use those to select points on the originals.
Now, I am certain there is a better way to do this, but the purpose of this example is to illustrate the needed workflow. Also, I think what I'm really suggesting here is that when the documentation is updated for Blender 3.0, this sort of workflow will be something that may confuse others, so it will be helpful to include examples and discussion.
I'm certainly willing to engage with the development and documentation teams to help with the docs. I'm a programmer but not (yet) in Blender specifically, so I would probably be more useful right now in documentation than trying to jump into the code this close to release. (I've been in the Blender source files and am convinced that I can learn it, but not instantly.)
The only very minor quibble I have is that the hover hints on the Add Nodes menu still say "Adds a node to the current graph" for most (all?) of them, which is not useful because I'm in the "Add" menu already. I think this is out of scope for GN specifically, and probably a needed improvement to the node system at large.
Geometry Nodes are tremendously useful, and the change from Attributes to Fields has -- even in one day -- transformed (pun intended!) the way I am able to look at procedural modeling. I cannot overstate my gratitude to the developers for this exceptional and elegant work!
0 Comments