How did I deal with…?

Grooming a Human Head Using XGen in Maya

The goal of this project is testing a head‑rigging system for facial expressions. This is what some of the post‑produced shots look like:

Facial expression 2 Facial expression 2 Facial expression 4 Facial expression 4
Facial expressions in head rigging stress test, mimicking actress' acting from footage.

These are the steps I'm following to achieve a working simulation:

XGen Simulation

The project needs a character with hair in a bundle. The solution I'm developing is using XGen. If the character had long hair, I would be using Maya nHair because it would flow against the surface (head, ears, shoulders), adding a higher dynamics level. This is what her hair looks like in viewport:

XGen shot 1 XGen shot 2 XGen shot 3 XGen shot 4 XGen shot 1 XGen shot 2 XGen shot 3 XGen shot 4
Showing XGen simulation in viewport (Maya).

Linking geometry to descriptions

I'm making non‑renderable geometries, applying the grooming onto them, and connecting them to the deformations onto the rigged head. After that, creating one hair collection with 7 groups, one for each description:

  • Main hair
  • Eyebrows
  • Eyelashes up and down
  • Ponytail
  • Hair contour, and
  • Face vellum
Descriptions in viewport Descriptions in viewport
Descriptions in viewport (Maya).

Simulating descriptions

Once my descriptions are linked to the geometry, I can draw curves which drive the hair's distribution on the surface. When my distribution is simulating along the guide curves, I can retouch and add modifiers to my grooming, like noise, clump and cut:

Simulation in viewport Simulation in viewport
Simulation in viewport.

Applying shader

When the hair simulation is working properly, I'm connecting a physical hair shader to the Shader Group of my Arnold Hair Library:

Hair physical shader Hair physical shader
The hair physical shader from Arnold.

Compositing

From this point on, I can import the simulation into my render scenes. Once there, I'm linking the non‑renderable geometry to the actual head geometry and letting the XGen simulation run. Once the result is convincing, I'm caching the simulation to a hard drive, and, when my simulations are cached, I'm in the position to render Arbitrary Object Values (AOV) from Arnold into Nuke for compositing:

Compositing after simulation Compositing after simulation
Compositing EXR after rendering simulation.

If you want to know more about VFX and characters, visit these case studies:

Maya Muscle for Skinning
Maya Muscle for Skinning

Simulating Maya Muscle on a rigged human character, using them as deformers on skinning and letting it drive Maya Nucleus nHair and nCloth.

Simulating clothes with nCloth
Simulating Clothes

Simulating clothes using nCloth in Maya. Mesh with motion capture drives dress & necklace. Cached shirt simulation drives a vest.

Visual effects workflow
VFX Workflow

Letting animated characters drive VFX using Maya Nucleus, including flexible cables, molten metal, smoke, sparks, and optical effects.

Visual effects fluid injection
Simulating Fluid Injection

Simulating a fluid injection for a shoe sole using nParticles in Maya. Understanding the briefing, developing simulation tactics, caching and rendering.

Simulating visual effects for environment
VFX for Environment

Simulating nParticles and force fields in Maya for an exterior environment including wind on vegetation, air particles, volumetric lights and water.

Discover 3D Skills