3
$\begingroup$

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

desired properties example

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 follow curves

-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:

-Can follow curves

-Proper scaling along only one direction

Cons:

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

-Bad, uncontrollable rotation

-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

example of current new hair curves setup

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.

nodes

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?

$\endgroup$

1 Answer 1

1
$\begingroup$

I found a way to bend the instances along hair with this solution from @Kuboå.

You basically export your hair system into a alembic files then use a Mesh to Curve node.

enter image description here

It's a bit of a dirty workaround. Plus, I haven't figure out a way to use multiple instances.

$\endgroup$
3
  • $\begingroup$ Thanks, I found a way to make it use multiple instances with your setup: i.imgur.com/Ehk6jtW.png though I still don't know how to get the tilt relative to the surface right $\endgroup$
    – SleepyEngi
    Commented Oct 3, 2023 at 21:34
  • $\begingroup$ Thanks ! I've used on another technique but yours is way simpler ! Also, I had trouble some with the motion blur. Apparently the curve abc are buggy on the 3.6. I found this solution : Export your curve .abc to a .pc2 (with the native addon, turn the Y-value off). Replace the MeshSequenceCache of the curve abc with a MeshCache modifier. Change the MDD format to PC2. And link it to your .pc2 file. $\endgroup$ Commented Oct 18, 2023 at 14:19
  • $\begingroup$ I didn't need to convert my particle system to a file with my system, it works right away with a curves object. You can convert particle systems to curves from the particle system tab. So it's way simpler and works right away in blender $\endgroup$
    – SleepyEngi
    Commented Oct 19, 2023 at 15:39

You must log in to answer this question.

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