I'm working on a geometry nodes hair system and would like to hear some ideas on how to better separate the children into groups for clumping.
To simplify this question here's the spawning surface, a couple of guide curves (tubes in red) and instances and their origin points. They were distributed using poisson disk to avoid overlapping the points so it's easier to turn them into nice hair ribbons later on.
The initial idea is to use a single Distribute Points on Faces node to spawn all children to take advantage of the poisson disk, sorting them out into groups later. To clump them around guides I'm using a Set Position node with the following configuration.
The principle works, but doesn't look like the best approach. I need to clump only the instances inside the distance range now (pink gradient) and the selection input could be used to do this, but I'd have to solve a few new problems like what to do with instances in overlapping ranges, to not speak of how manual all of this is because we got no loop nodes yet. I need to know at least the maximum number of curve guides beforehand to create a tree deforming each group of surrounding instances because an instance is either part of the selection and this particular clump or not.
It might be better to use Multiple Distribute Points on Faces and delete anything overlapping to skip the "sorting points into groups" part. I don't know, I'm a bit tired and frustrated. If it were you, how would you sort the instances into clumping groups?