SIGGRAPH 2014 News: Bungie's "Hair Salon" Keeping It Fabulous
- It had to run fast.
- It had to be future proof.
- It had to be easy to create.
- It had to have automated aspects.
"We wanted to create a way to merge the strengths of both game dev and Hollywood film workflows"
Creating the Hair Model
- The artist creates CV curves in Maya
- The curve is then converted within Shave and a Haircut.
- Next, there’s an attached Maya paint effect added and polygon geometry. (The poly geometry is the hair card that will be seen in the final game.)
- This workflow gets the best from all worlds by allowing Shave tools, CV curve tools, paint effects tools and poly tools to achieve a final result.
- Once the hair’s groom is worked out, the hair cards get placed. When you style the hair curves with brush tools, you are live updating the hair cards.
- Once the hair cards are placed correctly, artists can begin editing the final look of the hair splines. This is similar to adjusting the renderings for creating a final render.
- Once a layer is done, artist can then create multiple hair layers. Layering hair helps both technically and stylistically. For example, hair that acts in similar ways should be on the same layer. For example, bangs in one layers while a pony tail is in another.
Shading the Hair
- Ideally, every individual strand of hair should have anisotropic shine, but Bungie’s hair designs aren’t made from individual strands. To overcome this, Bungie built a hair shading to0l that gives control over the anisotropic shine to the artists of each hair style.
- Subsurface is also added to the hair to help soften shadows and create the illusion of hair between hair cards. This also helps with anti-aliasing the hair.
Animating the Hair
- For in game animation of Destiny hair styles, animators dealt with motion design, clumping movement and simulation. For cinematic characters, hair rigs were built and ran with Maya hair dynamics. To achieve this rigging, Bungie built a dynamtics tool that is essentially a framework that loads custom code to run automated functionality on a rig in a scene. This method was also used to animated other things within the game such a s necklaces.
Crowd Sourcing Hair
- To control a large amount of hair assets with unpredictable movements, but with shared data, Bungie’s hair designers used Vertex animation as a hair simulator. Bungie also has a highly-editable node/shader network that lets artists control how they want the verts on the hair to offset.
- They created a node graph to build the base motion of the hair. For example, hair that oscillates right and left. Also, they wanted to tie the hair into the character player’s linear speed. To keep the hair from abruptly stopping, they added a dampening string control to add follow through.
- All of the hair verts were set up to share a blue channel that controlled the clumping of the hair. Next, they used the color channel to control hair movement. Blue areas clumped together like in a clump map.
- Another node set in the overall graph would help control the strength of the movement. For this, Bungie used a red channel for control. So the bottom parts of the hair would be bright red (great movement strength) to the root that was black (gradient, less movement)
Even though this pipeline produces quite an extensive line of sophisticated hair dos, Bungie is still looking to the future to improve the ways it creates character hair. For example, they’re working on a tool that supports hairline polish. They want to increases the number of hair types (more coarse/curly hair). And designers want to eventually be able to add up and down movement for hair when a player jumps.