For character’s hair animation, I tried to use nHair system in maya to automatically generate the movements and collisions. It can be used in many applications, not just for hair.
We have two types of curves here: input and output. Input curves simply defines the original shape, output controls the dynamics.
Firstly I rigged the hair and parent it to the head joint. Draw an EP curve along the skeleton.
Then delete the history and bind skin in hierarchy mode. Paint the weight if necessary. Hide the mesh.
Make the curve dynamic under nHair. The follicles and output curves would be created. Make the follicle and the corresponding output curve under the same hierarchy. Create the IK bone.
In the follicleShape, set Point Lock to Base.
To play the simulation, select nSolver > Interactive Playback.
To stabilize the dynamic curve’s behavior, adjust the Bend Resistance attribute value in the Dynamic Properties section of the hairSystemShape of the Attribute Editor.
To make the collision between any mesh, just create passive collider under nCloth.
In order to keep hair shape not change too much, I set start curve attract here to help.
Old version hair simulation dynamics tutorials :
http://k9port.blogspot.com/2013/11/dynamic-hair-tutorial-part-1-setting-it.html
nHair system introduction:
https://www.linkedin.com/learning/maya-nhair/controlling-collisions?u=57077561