7
$\begingroup$

How do I use the geometry node Distribute Points on Faces but not have them randomized?

$\endgroup$
1
  • 1
    $\begingroup$ Hello, could you add an example of what you are trying to achieve ? $\endgroup$
    – Gorgious
    Commented Sep 6, 2022 at 10:05

1 Answer 1

14
$\begingroup$

Here is an example with a Default Cube:

enter image description here

Instead of using the node Distribute Points on Faces, which would result in a random distribution of points over all faces, I subdivide the mesh with Subdivide Mesh and convert the resulting faces into points. At these points you can then instantiate your objects.


If you also want to align the rotation of the instantiated objects to the normals of the surface, you would first have to capture them with Capture Attribute, and convert them to a rotation with Align Euler to Vector before instantiation:

enter image description here


An even simpler variant would be to convert the faces directly into points with the node Dual Mesh.

This eliminates the need to capture the normals and they can be used directly, since the normals are automatically interpolated to the new points when they are converted by Dual Mesh:

enter image description here


(Blender 3.1+)

$\endgroup$
8
  • $\begingroup$ Hi. This works. But I have a problem. My surface is surved and I want the instances to point as per the normals of the surface. I used normal node and rotate euler node but they don't have any effect. $\endgroup$ Commented Sep 6, 2022 at 11:01
  • $\begingroup$ @NewBlenderer I understand. Maybe the update will help you... $\endgroup$
    – quellenform
    Commented Sep 6, 2022 at 11:14
  • 1
    $\begingroup$ i remember i was able to align euler with normal without a Capture Attribute node. why do we need it? i.sstatic.net/eNrJf.png $\endgroup$
    – Harry McKenzie
    Commented Sep 6, 2022 at 12:03
  • 2
    $\begingroup$ @HarryMcKenzie In this case, that's needed because after the conversion to points, there are no more faces from which to derive the normals. But thanks, I just came across a small error that has just been corrected (I had previously captured the normals in the domain Points by mistake, instead of Faces). $\endgroup$
    – quellenform
    Commented Sep 6, 2022 at 12:08
  • 1
    $\begingroup$ aaaahh now i understand this node! thanks a lot for the explanation! $\endgroup$
    – Harry McKenzie
    Commented Sep 6, 2022 at 12:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .