8
$\begingroup$

I'd like all the hair to lean in a particular direction in relation to the normals, but don't want to have to comb the entire thing. Is there a way to do this? For example, say I had a torus, can I make the hair emit at an angle like in the diagram below?

enter image description here

$\endgroup$
  • $\begingroup$ What have you tried? It seems by making the red shape rotate the hair might move in the desired direction $\endgroup$ – MicroMachine Dec 9 '16 at 2:23
  • $\begingroup$ @fabriced I've only played around with the particle settings themselves. Would rotating/moving the emitter have the desired effect? I've only been using Blender for a few months and haven't worked with any animation as yet. $\endgroup$ – Danial Dec 9 '16 at 2:27
  • 1
    $\begingroup$ Particles have rotation options too, might be worth looking into that as well $\endgroup$ – Duarte Farrajota Ramos Dec 9 '16 at 2:48
6
$\begingroup$

solved!

You'll want to be doing something with the tangents.

 

TL;DR Enable Advanced, set 'Rot' to 0.5 and play with the Normal and Tangent values.

 

You'll need to enable Advanced in the hair options: Advanced

Then go to the 'Velocity' section, under 'Emitter Geometry.' The 'Normal' value is set to the length of the hair divided by four. (Just don't ask me why.) Increase the Tangent value to something like 0.1, increasing the influence of the tangent on the length of the hair. (Those strands on the side are doing their own thing; that's lazy modelling on my part and should not happen.) I promise.

Then modify the Rot attribute (Tangent rotation) to 0.5 to make the particles rotate in the direction you wanted. If you wanted you could change it to another value to make the hair rotate in a different direction. Just play with it for the effect you want. it looks pretty cooool! i might use this at some point

The 'Rot' parameter is basically rotating the tangent around the normal, with -1 to 1 mapped to -180 to 180 degrees. This makes sense if you imagine that there are two imaginary lines for every hair (in this case, on every face.) The red is the normal and the blue is the tangent. The hair is being pulled in both directions at once, so its length outwards is the Normal value (0.075) and its length sideways is the Tangent value (0.8). The diagram is nowhere near to scale. HQ annotations

If you want to change the rotation side-to-side of the hair you will have to do a bit of fiddling with the Normal and Tangent values, but not the Rot. Because of the way the Tangent and Normals work (as I explained above), we can do a little trigonometry to find the length and direction of the final strand. In particular, with a Rot value of 0.5, if the Normal value is n and the Tangent value is t:

  • the length of the final hair strand will be sqrt(n^2 + t^2) (Pythagoras)
  • the rotation of the final hair strand side-to-side will be arcsin(n/t).

(arcsin is the inverse sin function.)

$\endgroup$
  • $\begingroup$ Do you happen to know if there's a way to rotate the tangents because they are not all facing the same direction? If not, I might pose this as a new question. $\endgroup$ – Danial Dec 10 '16 at 9:16
  • $\begingroup$ @Danial Are you getting the weird hairs sticking out like in my example image? If so, that might be bad topology, but I think it may be a bug in the hair calculations. Either way, unfortunately I can't help you with that. $\endgroup$ – ChiCubed Dec 10 '16 at 10:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.