I'm trying to instantiate line meshes with a random number of segments at the vertices of a mesh.

Blender 2.93 has shiny new mesh primitive nodes to instantiate meshes in your geometry nodes network. However the Point Instance only accepts the type Object or string and since all the mesh nodes have the output type of Geometry it seems to me that it's impossible to create a number of meshes at certain point locations.

enter image description here


2 Answers 2


Found a workaround:

  1. Create an Empty object that stays at the world origin.

  2. Create a collection named 'lines'.

  3. Create a Mesh object in the collection, and add a Geometry Nodes modifier.

  4. Create a network that outputs the position of the mesh object. Get position of current object

  5. Create a network that creates the geometry based on the location. I've used the 'x' offset here to create a line segment with 'x' offset count. The DeltaX input is the ratio for each increment. enter image description here

  6. Now duplicate the mesh object until you have enough variations. (You can do this quickly by doing duplicating once, offsetting by DeltaX and pressing Shift+R).

  7. Reference the 'lines' collection with the 'Point Instance' node to access the geometry points.


It's now natively supported in Version 3.0+ :

enter image description here

Simply plug the mesh data output into the instance input to instance the geometry.


You must log in to answer this question.

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