Geometry Nodes

Yeah, I think the socket would look the same. The key is using a single noodle to pass around multiple strings though, otherwise it doesn’t have any benefit over a multi-input socket. But I think any socket that accepts lists would also be a multi-input socket.

Isn’t it important to communicate order clearly ? in case operations are heavy and non-commutable (such as booleans)
Not to mention these would have to be reorderable

Yeah, unfortunately that’s a known issue currently. That’s just the way that unique names are generated for group node sockets. It would be good to improve that in the future, or at least make the animation editor aware of the corresponding socket labels.

1 Like

Hello, is there a way to invert the normals of a mesh ? I was trying to create a mirror modifier node group but scaling -1 along an axis obviously produces inverted normals.
It seems the face normal attribute is write only. I understand that it is tied to the actual geometry and modifying it may lead to unexpected shenanigans, but a “Recalculate Normals” or “Normal Edit” like the modifier would be nice.
Cheers

I’ve put a copy of my experimental script node for geonodes on github, be sure to read the readme front to end as it contains important information on what this experiment is/meant to be.

12 Likes

Yeah, the normal attribute is read-only. That’s because normals are inherent to the mesh topology and the vertex positions, changing them requires changing one of those two things. In the future we can support custom normals on the face corner domain.

2 Likes

But also, an “Invert normals” node that would reverse the order of the vertices for each face would be very simple to implement, that’s a good idea.

4 Likes

Thanks, at least I know it is on your radar! My current workaround is to key all parameters on frame zero, even if most are not used. This at least gives me the same order of the animation channels that are in the modifier.

image
When I create new group input through the UI, how do I define the type of that input?

Dragging a node socket type into the Group Input node certainly isn’t the only way to specify the socket type… that would be embarrassing.

1 Like

This is the way :+1:

1 Like

Or a “sanitize normals” for when your colleague deals you a sketchy free model from the deep web and it’s completely messed up… like the lost in translation kind, scrambled by the times past

@LudvikKoutny It’s always been. I would like to see a proper control panel for socket management. Enums and expanded enums would be really cool also, to go deeper in the whole “procedural asset” fantasy…

1 Like

Socket type changing improvement is actually in the works: https://developer.blender.org/D10912

3 Likes

I am very curious what this ray cast node is for, any explaination?
https://developer.blender.org/T88078
Will we be able to use it to detect the distance (or more like relative position) between a certain vertex on object A and a certain vertex on object B? Or is it for something else? If no, is there any current solution for detecting this distance? This would be useful for like rolling ball animation on bumpy landscape.

BTW, how do I rotate the object in world space with transform node? EDIT: Nevermind, my confusion, it is already world space by default

Ah yes, I recently ran into this when doing a recent Youtube tutorial! I needed a float parameter going into a vector input and realised that I needed a dummy math node in between. Certainly made the tutorial explanation a bit more awkward than it needed to be :slight_smile:

It casts a ray from a point(s) based on direction vector and returns hit location(and some other attributes) where ray hits a face. You can stick instances to a terrain for example.

4 Likes

Oh perfect. I hope this will be committed ASAP.

Thanks for explaining. It sounds indeed like what I expected. It will be nice to use it for my rolling stone animation

1 Like

Raycast node ? I love this. Don’t you folks try to make a renderer out of that. A geometry nodes renderer… we’ve gone too far

Nothing will ever beat using Postscript to make a printer output a raytraced image :wink:

I’m trying to recreate this:

This is how far I’ve gotten:

Now the problem I’ve been running into is that I can’t connect the poles with each other.
For that I’d need the Attribute Proximity Node to return the nearest point that is not itself. Is that or a more general return the 2nd closest point planned?

Obviously Jesse has been able to do it without that feature, but I can’t figure out how :pensive:

Attached is my file, just remove the .txt from the file extension
poles geometry nodes test.blend.txt (168.0 KB)

4 Likes