Nvidia Hairworks - Taking hair to a new level!

Eyebrows are quite complex, didn't you know? No budget for lashes left.
Tesselated eyelashes are only available if you turn hairwoks to Very High. Ultra mode gives you ultra realistic nose and ear hair.
 
It looks like that screenshot was taken with the tesselation levels limited to below 32x.
 
That is unlikely, because I cannot change the tessellation levels on an Nvidia card. This is how the game looks at 4k maxed + high preset of hairworks. And it's not the strand quality that is problematic but the lighting of the strands that is off.
 
HairWorks Authoring Considerations

Before designing and authoring your HairWorks asset, a few questions should be explored.

What is the budget for this character effect?
  • Artistically, is the hair/fur going to be high-resolution/realistic or stylized?
  • What is the usual distance from the camera to the character?
    • Are there close ups?
  • What are some key attributes of the hair/fur?
    • Is it wavy, clumpy, free-flowing, or really stiff?
    • Is it very dense with good coverage or is it loose and sparse?
    • Is it dry, wet, shiny, or dull?
    • If the asset is to have hair, does it need to collide with other body parts on the character?
Listed is a brief set of authoring considerations for artists that should result in more efficient HairWorks assets, which will be discussed further below:

Using continuous distance and detail LOD helps keep assets as efficient as possible at various camera distances.
  • Tessellation based attributes
    • Number of CVs (control vertices) along an authored guide curve
    • Usage of Spline Multiplier attribute
    • Density usage for desired coverage should balance between performance budget and art aesthetic.
    • Shadow quality should be chosen based on performance budget versus art quality.
  • Only use attributes when needed for a specific style or behavior. Set to 0 otherwise.
  • Collision Shapes versus Backstop
For the purposes of this article, we’ll say the budget for a character’s HairWorks effects, at medium gameplay distance, is roughly 3-5ms (FX budget can vary per game engine/per game, per asset). This budget will rise and fall depending on the character’s distance from camera and how many characters are intended to be onscreen at once.

HairWorks utilizes two types of tessellation to help create smooth strands that provide good coverage on the character.

The first type of tessellation adds vertices in-between the control points on each strand, making the strands more smooth. This helps with style attributes, such as clumping and waviness. The number of additional points is determined by the Spline Multiplier attribute on an asset. A value of 1 uses the same CVs as on the authored guide curves. A value of 4 multiplies the original set of CVs by 4 and spaces them evenly, resulting in smoother, more stylistically flexible strands. Essentially, this is used as strand smoothing to keep from having faceted, un-life like strands.

The second type of tessellation adds additional interpolated strands between the artist’s groomed guide strands. This is controlled through the density attribute on a hair asset. The density can be multiplied with a texture map to more effectively and efficiently utilize dense areas of interpolation. Tessellation is used to help create efficient hair assets with small memory foot prints.

https://developer.nvidia.com/content/hairworks-authoring-considerations
 
3ms per character on medium, that is sick.
To expand on that:
„For the purposes of this article, we’ll say the budget for a character’s HairWorks effects, at medium gameplay distance, is roughly 3-5ms (FX budget can vary per game engine/per game, per asset). This budget will rise and fall depending on the character’s distance from camera and how many characters are intended to be onscreen at once.“
 
Back
Top