Geo nodes. How to evenly distribute points with thin objects?

So here’s a one object with 4 meshes with different dia.
Smallest cylinder will have less points. But how to avoid that? My goal to have same amount of points regardless of diameter.

Since the density is measured per face i would guess if you have less faces you get less points for you “twigs”. So you have to think about some formular to increase the density if you decrease the face count of you cylinders depending on the minimal/maximal sizes you wish to cover/map…

1 Like

I have te same problem

did you found any solution?

Nope. I just switch to using hair particles.
AFAIK in 3+ you can get access to face area, which probably, should help with that.

Quick math:

…general case is just plugging in the Mesh-Face Area node instead of the Radius value node used above.

Good luck!

2 Likes

how do you start it ?
add a cylinder then Geom nodes ?

any sample file if possible ?

thanks
happy bl

However you want… showing a monkey below. Cylinder example works because the “side” area is 2*pi*radius*height, so multiplying by the inverse of the radius makes it a constant (just 2*pi*height)… which is what was requested.

Yes, you can use that for a general solution (with caveat). The inverse of the area multiplied by some constant will make the density independent of scale, but it means small faces will initially get more points…

Good luck.

2 Likes

How do you prevent that from happen?

Easiest way is to distribute points, then transform.
image

But if for whatever reason you need do the transform before, then just take the ratio of (area/initial area) and that will make the distribution independent of initial area.

Good luck.

2 Likes

Thank You

You’ve been very helpfull!!

1 Like

Now I have another roblem.

I have a distribute point on faces in an animated mesh (a tree) and the poits are flowers growing

durign the animation, some points (flowers) appear and disappear / move by itselfs

I found that if i chage the tranfer atribute node from “nearest” to “nearest face interpolatied”, that soves some particles that are cotating by themselfs.

But i can’t find solution for some particles that ara randomly growing along the animation

Would not know how to do this if the animation is from shape-keys… if the animation is done by an armature then you can do the following:

You’ll have to generate the points, “bake” (i.e. convert to mesh) realized mesh points, like so:


…and then in Object Mode, convert to mesh. Then you’ll need to deform those points with the armature, doing your instances on those “baked” points… tricky still.

Ideally you want the animation driven by GN or something like Armature you can put later in the modifier stack - so long as the points get generated in the beginning, deformations can come after and points will be consistent.

Good luck!

1 Like

That seems to solve the problem, Unsfortunately thats a lot of work and i dont have time to do that.

Int the geometry input, i have some vertex group that reperents the areas where the flowers bloom.

the fast solution that i found was remove some vertex when the flower are flickering or growing randomly and that solved the issue

@zeroskilz, thank you very much for your help and time !! Cheers Mate!

You can generate a gazillion points (almost) and delete the extra points

That’s interesting!

can you control the points distance ? more or less like the distance min in the distribute points on faces node?

I don’t think so. Logically speaking, it seems weird to control the point distance when you want a fixed number of points