In this 5 part series for – Master Class “Realtime Digital Double with Character Creator and Texturing.xyz” , Sefki Ibrahim shares his tips and tricks on how to take advantage of Character Creator and Texturing.xyz multi-channel face textures to create a real-time character (Ed Harris), and animate Ed’s face and body easily in Unreal Engine.
Sefki Ibrahim is a freelance character artist that specializes in photorealistic digital human works.
He is familiar with employing Texturing.xyz material maps, and has been selected as “2019 Artist of the Year” by Texturing.xyz.
Part #3: Hair Card Generation
Now before we move to the fun stuff (look-dev and SkinGen), it’s time to take a break from the face itself and work on card-generated hair for Ed. In CG, anything involving hair takes time, whether this is using XGen or hand-placing hair cards. Also, I have to say; this is my first time attempting hair cards!
- The first step was to create the hair textures using Substance Designer. Credit for this method goes to Ambience Lee. In Substance Designer, I began by creating a scratch generator node. With this node selected, I turned down some of its attributes, shown below. The network below shows how a Directional Warp was used to give the hair a little wiggle with a Perlin noise used to drive this.
2. From this point on, I created seven different clump variations (scratch generator variations) and blended them into a square tile. It’s essential to develop modifications for various purposes. For example, the base hair cards should be thick and unnoisy to cover the scalp. In comparison, the flyaway hairs should be less dense and have some more noise since they will provide definition and character to the groom.
I proceeded to connect this hair texture tile to a curve node for the transparency, normal map node, ambient occlusion node and a colour node. Here are the textures generated from Substance Designer. The roughness and specular maps were created by grading the ambient occlusion map in Photoshop.
3. Starting with a simple plane in Maya with just one subdivision along its width and two along its length, I built a card per hair-clump in the UV-tile like the image shown below. From this, I can simply duplicate the hair card and place it on the head; manipulating the vertices to follow the curvature of the scalp. I made sure to build the hair cards on just one side and mirror at a later stage. Finally, I then fine-tuned the hair cards asymmetrically to produce a more natural final result.
4. Once I was happy with the hair cards, they were imported into ZBrush and further manipulated using the move tool. This tool allows you to move more substantial chunks of hair with ease. I also subdivided the hair cards for a smoother result.
Ensure to delete the lower level for Character Creator to read in this new subdivided hair. (Probably a good idea to make a duplicate of the base and export out for safekeeping!)
Before jumping back to Character Creator, we can adjust the hair card UVs in ZBrush to ensure our texture maps are read in correctly. With the hair subtool selected, navigate to UV Map and under Adjust, select Flip V. Proceed by pressing the All button to update the Character Creator scene.
In Character Creator now, I navigated to the material tab and chose the material type to Digital Human Hair. I then plugged in the maps into their correct slots.
6. The last thing to note is the tangent map. On the Reallusion site, it’s explained that a red colour represents a vertical hair flow whereas a green colour represents a horizontal hair flow. What we want is a vertical hair flow, so I created a red colour map in Photoshop and imported it into the slot. You will notice if you play with the roughness strength, it shows how the shine of the hair moves correctly.
PART #1 – Project Overview
PART #5 – Animating in iClone for Unreal Engine