Anne Shirley is one of my favorite characters from classic literature. So this video is dedicated to
her unrestrained imagination and her inspiring sense of wonder. Starting with a sculpted head,
we will procedurally generate the hair and then animate them. All of this,
with a simple geometry node setup. First off we need a sculpture of Anne and a separate object
for her scalp. So select the scalp object, go to the modifiers Tab and add a geometry note
modifier. Next add a path curve and hit tab to enter edit mode. It's important to rotate this
curve so it lies along the positive z-axis. In addition it's also important to move the
curve up so that the Base is located at zero coordinates as this will guarantee that Anne's
hair grows outward from her head. Now select the scalp object then head over to the geometry nodes
workspace where blender has already placed two nodes in our setup. To start generating
individual strands of hair, use the add menu and the search field to bring in an object info node
a distribute points on faces node and an instance on points node. On the object info node select
the curve we created earlier and on the distribute node set the distribution method to Poisson disk.
The key point to note here is that by connecting the rotation output of the distribute points
node to the rotation input of the instance on points node we are making each strand of hair
grow perpendicular to the surface of the head. Surely if you want to increase or decrease the
density of the hair simply use the parameters on the distribute Point node. Now to give each
strand of hair some volume and a material, once again bring up the add menu and use the
search field to drop in a curve to mesh node a set material node and a curved Circle node
The curve circle is used as the profile for the curve to mesh node and turns each
individual curve into a cylinder that makes up each strand of hair and to make each strand of
hair thinner at the tip select the curved path object and hit tap to enter edit mode
where you can select the top end of the curve and set its radius to Zero from the side panel
and while we are here let's go ahead and select all the points on the curve then
subdivide them using the segments menu. This subdivision will give us better results in
the next step which is to add waves and curls to the hair. Just keep in mind that when it
comes to the overall radius of the hair strands you can adjust it using the curved Circle node.
Last but definitely not least use the set material node to further stylize the hair.
Now to generate the waves and curls on this beautiful carrot colored head,
take a deep breath and add a position node, a noise texture node, a map range node,
a realized instances node, and finally a set position node. Reduce the scale and
detail on the noise texture node and switch the map range node from float to vector.
Now glance upon the Abomination that you have created. We've added waves and curls to the
hair for sure, but why are they floating to the side of Anne's head. Before you dive into the
deepest of despairs, let me tell you that the reason is that currently random noise is being
added to the entire length of each strand of hair, even at the base. So to fix this,
we need to move the base point of each strand back onto the surface
of the head which fortunately is a cleverly simple task, since all we need is a vector
math node with its operation set to scale, a map range node and a spline parameter node.
The special node here is the spline parameter node which has a factor output that starts from
zero at the base of each curve and increases to 1 towards the tip. Passing this Factor over
to the map range node and the subsequent scale node removes the unwanted offset at the base of
each strand. Meaning that Anne's hair is now securely attached to her head. Keep in mind
that the scale value on the noise texture node allows us to adjust the frequency of
the waves to make the hair more or less wavy. Finally you can use the parameters on the map
range node to control the overall shape of the volume of hair. This will come in handy in the
next step where we animate the hair and give the impression of a windy day. But before we do that,
let me remind you that if you don't have time to read classic books like Anne of Green Gables,
the next best thing is to listen to audiobooks. Check the description for an amazing deal on your
next audiobook subscription. And finally, to animate the hair, let's add a scene time node,
a normal math node with its operation set to multiply, and a vector math node.
Easy enough we have animated Anne's hair. But freaking fiddlesticks,
something feels a bit off about this animation as it doesn't seem like the wind is moving
through the hair. To see what I mean just compare these two animations where one clearly looks more
natural than the other. The good thing is that we have a cleverly simple solution to imitate
this natural motion and all you need to do is to change the operation of the vector math node to
multiply-add and make use of the normal output of the distribute points node. Now if we adjust the
animation speed with the multiply node, we have Anne, standing in the wind, perhaps thinking.
It has always seemed to me ever since early childhood, amid all the common places of life,
I was very near to a kingdom of ideal beauty. Between it and me hung only a thin veil. I
could never draw it quite aside but sometimes a wind fluttered it and I caught a glimpse of the
enchanting realms beyond - only a glimpse - but those glimpses have always made life worthwhile.
If you've watched this video up to this point you will probably also like this next one,
and don't forget you can get the project files for this tutorial using the link in
the description. As for this one, thank you for watching, and until next time, take care. :)