Fields and Anonymous Attributes [Proposal]

Yeah, more nodes means more data, and more results in the search menu, making it harder to find a specific node…

I would much prefer fewer multipurpose nodes than more nodes that only do one thing.
But then again, people have hated attributes from the very start as they are supposedly “unintuitive” even with the search feature.
That’s not to say that I don’t like fields (I think they are very quick and easy to work with ) , but I’m okay with using a string input every once and a while.

There are a few more nodes I would like to see merged, such as point separate and delete geometry. I also think the position, normal, and index could be merged into a single geometry info node.

1 Like

I believe the idea is to make the system less dependent on the store/extract nodes. I do think we can keep the store/extract nodes just for some user freedom, but idealy the users should not be forced to use a string input for attributes in the Field workflow. I think we are heading towards a direction where store/extract becomes optional and more of a user freedom thing.

It is needed very often indeed, especially in modeling. You can select part of the mesh and scale the part with this node. You can do solidify by using the extrude and move node with a set position node afterwards (although it would be more ideal for extrude and move node itself to accept field input). You can do displacement wth a noise texture and a set position node. It is indeed used very often.

I think the reason for them to be seperate should be avoiding nodes with large and chunky UI, I think putting them in one seperate category should be good enough

This suggestion was inpired by another earlier suggestion of the geometry info node, but Hans didn’t like that idea, so I suggested a seperate category instead.

2 Likes

When will field branch merge with master branch?

It has already been asked:

It’s probably going to be merged this week (since the quote was last week). Excited!

3 Likes

Hello,
I’ve been playing around with the index node and wanted to provide some feedback, so I recorded a video about it, you can watch it here:

Topics are:

  1. Get the Count (or Last Index)
  2. Reading the attribute of specific Index
  3. Storing and using that as a “constant” variable
  4. Transfer attributes via index

P.S. it is debatable if it’s better to get the Count or the Last Index. For most math we’d want to use the Last Index instead of the count, which is count - 1.

8 Likes

Hey there is a new Temp Geometry Nodes Fields Build Today! :star_struck:

What’s new? @jacqueslucke @HooglyBoogly

edit: I just noticed that it’s not the prototype anymore, I guess It’s the merge with master test? I’m testing right now!

8 Likes

I just downloaded it but cannot find Extrude or Store Persistent for example :frowning:
I thought I may have downloaded the wrong build but maybe the merge hasn’t happened correctly?

https://developer.blender.org/D12414
image

11 Likes

Trying new field nodes.

Spherify

9 Likes

And so it begins. The first fields commit to the master branch.

https://developer.blender.org/rBbf47fb40fd6f0ee9386e9936cf213a1049c55b61

12 Likes

Hello,
I have a couple of questions with the new build.
The Attribute Extract node is missing, is there something that replaced it?

I’m finding the new input nodes aren’t working in many situations. I assume the fields aren’t working with every node yet, but I’m reporting it just in case. For example, shouldn’t this work?:

I’m feeding the normal into the Align Rotation to Vector node but it doesn’t do anything. I know that we could use the normal attribute instead, but shouldn’t it be working? Position or Index nodes also don’t work.

Another question is, how would we move instances along one of their axis? For example here:

I’d expect to get the instance axis with the Attribute Extract and use that to add to the positions, but there are a couple of issues:

  1. as mentioned Attribute extract isn’t there
  2. Which Point attribute defines the orientation of the instances? There is a Rotation attribute but that’s only 1 Vector. Is it Euler rotation relative to the group input object?
    In General, I think there should be an easy way to get this kind of Vector data out of the Points / Instances.

Is there a more obvious workflow for this that I’m missing?

The files are here for convenience:
normal_not_working.blend
move_along_axis.blend

We need to give them time
they need to re-implement everything from scratch in the main build

2 Likes

I think because of this:

Curve Circle, Star and Quad have no Start- and Endpoint. Is this intended?

Yes because these curves are cyclic, cyclic curves don’t have start nor end point since they are looped. Whether a curve is cyclic or not is a boolean attribute that can be modified with attribute fill/store named attribute node.

When to join the crush split node

Do you mean fracture? Is there a patch for that? I don’t think it’s going to be in 3.0.

Here is a list of goals made by Hans regarding Geometry Nodes in 3.0. You can take a look if you want to know what’s coming.

4 Likes

Are there any chances that attribute transfer/fields substitute will allow to transfer float values so that we can make custom animation once then instance object and trigger custom animation with proximity node, for example to the 3.0 release?

Not sure if off topic or not. But, with this new method/geo nodes in general… is there a way to do an “Edit Poly” type node setup/modifier?

Mainly I’m thinking about… if I wanted to mirror SOME faces, but not ALL, for a lowpoly. Like, mirror some side faces, to share UVs, but keep top faces Unique, that player may see in FP view/ADS on a weapon.

Right now I have to detach faces into a new mesh/mirror, or re-assemble things after the fact/can’t do in a modifier that I know of…

This is all very exciting stuff though! Great work!

Not sure if I’m interpreting you correctly but here’s a setup mirroring the ear of suzane (here the mirroring is done by scalling -1 in the x axis, for more complex situations this would become a bit more complex accordingly):