Geometry Nodes

As more and more useful nodes are popping up (https://developer.blender.org/D10308), matching the layout of the existing nodes, I really feel like the topic of the node design should be tackled sooner than later.

Another reshuffle that improves readability in my opinion:

21 Likes

So, I’m sharing some tips on using Geometry Nodes to create droplets. :slight_smile: It’s a portuguese only tutorial, but maybe it can help.

5 Likes

Hey guys,

https://pasteall.org/blend/00fccb3b29b54d65b2e05e9d6c3a1c66

I tried to create a nodegroup that convert XYZ Euler vector to Quaternion;

It’s currently not working as i believe there’s a precision problem, some decimals might be truncated?) If some wants to have fun with Quaternion in geonode i have a test file with everything set up

Maybe this has already been done in cycles with math nodes? :thinking:
Anyway I’m no math expert tbh

edit:
I’ll try another formula, as i heard some are “digitally unstable” good to know

Based on this image, the team has plans to create some sort of ID or Index attribute to create random attributes for each point clouds/instances? If I want to make my droplets to be animated, it makes sense to have different movements for each one.

2 Likes

https://wiki.blender.org/wiki/Source/Nodes/Modifier_Nodes

Reserved-name attributes are attributes that nodes expect to operate on. For example, the Point Instance node expects its input to have position , rotation and scale attributes.

  • density
  • id
  • radius
  • rotation
  • scale
  • temperature
1 Like

Good to know! Thanks.

I tried to separate points based on height using the displacement texture, but I get a wrong result. Looks like the Attribute Sample node creates attributes that are offset from the displacement texture on the surface:


Is this a bug or am I doing something wrong?

2 Likes

There’s the “position” attr that you can use for that :thinking:

I can confirm this. I also tried to use displacement modifier and Attribute sample texture node on the same object. It looks like they applies a texture differently. Changing coordinates parameter of displacement modifier did not improve the situation.

Should not the Attribute sample texture node and other modifiers have opportunity to unwarp a texture in the same way?

1 Like

I thought about using that, but I can’t figure out how to compare z position only. Either there’s some new type of math, that I haven’t heard of, for comparing vectors or Attribute Compare is broken
 It’s really hard to troubleshoot without some sort of attribute inspector.

I doubt it’s an issue with unwrapping, because image textures work correctly.

Location is a XYZ vector, there’s some separate vector node coming, also you can try to multiply by another vector such as (0,0,1),then doing a sum of some sort for example.

Dot product with 0, 0, 1 will give you Z coordinate float, like this

6 Likes

Hi, are there any news in regard of converting the generated instances into an actual object (mesh), so it can be exported to a game engine? Does it work well even for large number of instances?

You can already convert instances with CTRL + A, Make Instances Real.

1 Like

Hey all, the docs have updated and I can finally share this page with you: it’s meant to be a reference for all of the attributes used implicitly by nodes: https://docs.blender.org/manual/en/2.92/modeling/geometry_nodes/attributes_reference.html

Maybe that’s helpful, at least until we get a search drop-down.

7 Likes

Thanks for the hint. So does this mean that Attribute Compare doesn’t compare xyz values separately, but combines them into one value somehow and then does the comparison?

Yay for docs! Here’s a bit of feedback for them though:

  • The “naming convention” section is kind of weird. Those seem like built-in attributes to me?
  • How to call out nodes should be consistent. On the page there is both the grammatically incorrect ... in the Point Distribute to ... as well as the much better ... created by the Point Distribute Node in... I think the inclusion of Node or just node would read better in all cases.
  • The notes are oddly asymmetrical. The naming convention section usually describes where the attribute is used like Used in the Point Distribute... but the top section is worded differently. Maybe have an explicit “Used by” example section for each note consistently?
    • “radius”, “Float”, “Controls the size of points in the viewport”, “Used by: Point Distribute node” etc.
    • “id”, “Integer”, “Provides a stable value for random calculations. Mostly internal use only.”, “Created by: Point Distribute node. Used by: Attribute Randomize node”

Great ideas, thanks a lot for the feedback!

What’s the difference between builtin attributes and naming convention ? What’s the difference between radius and scale ?

Built in attributes are attributes that cannot be removed, and the data will always have them. Naming convention attributes are used implicitly by nodes, but they’re just like any other attribute, and you can add them and remove them.

  • scale is assumed to be a vector type.
  • radius is only built-in for pointclouds, where it’s assumed it will have a float type.