# Creating hair cards that can follow the curves of a hair system, without particle instance modifier, among other things

I want to make hair cards, but with the following properties:

-The particles bend according to the hair curves

-The particles stretch to match the curve, but only on their "local z"

-The particles should all be rotated consistently to be perpendicular to the z axis

-The ability to select random particles

I've tried several methods for this.

1) Normal hair particle system

Pros:

-Proper rotation

-Can select random particle variation from a collection

-Good combing tools, can use interpolated children

Cons:

-Cannot scale along only one axis

So we can rule this out because it is impossible to make the particles follow the curves, which is the most important part, I think

2) Particle Instance modifier

Pros:

-Proper scaling along only one direction

Cons:

-Bad combing as interpolated children do not work/show up/blender crashes

-Cannot select random particles

So I'll rule this one out because of the bad rotation. The other issues I could work with, but I cannot figure out a reason why the particles rotation seems to random when using this modifier.

3) New Hair Curve Geonodes

Now this one has a lot of potential, and while it has bad combing tools, I can simply convert an old particle system to this new system, which solves the issue.

Pros:

-Can use the full extent of geometry nodes

-I've been able to recreate the normal particle system's object option, though I haven't been able to figure out rotation nor bending along a curve

Cons:

-I'm not sure if I can make the individual instances bend to the specific curve they belong to

-I cannot figure out how to do it

This here is what I managed to do using the new hair curves. The particles can scale exclusively along the length, I can get them to face the general direction of the curve using the curve tangent of the curve's first point. I however cannot figure out anything else.

And here are the nodes for what I have so far. I tried a bunch of things to rotate them properly by using the rotate instance node, but with no luck, since I'm pretty much trying to brute force the math. Does anyone have any idea how I could do this? Or if there's a better approach entirely?