Previous topic

SDK Samples

Release Notes

NVIDIA HairWorks 1.2.1

NVIDIA HairWorks is a library for simulating and rendering dynamic hair and fur.

What’s New



This is a minor update release. It does contain small API changes.

  • Improved versioning information
  • More explicit handling of rendering state with debug rendering

API changes

  • AssetHeaderInfo - m_fileVersion string becomes m_serialVersion integer
  • VisualizationSettings structure can control depth buffer on call to renderVisualization
  • const BuildInfo& getBuildInfo() replaces getBuildString(). The m_buildString member of BuildInfo holds the same value as getBuildString().
  • BuildInfo structure contains methods that can convert version numbers encoded as ints to strings and vice versa

Changes from 1.1.1 to 1.2

This is a point release and changes the API significantly from 1.1.x.

  • DirectX11
  • Frame rate independent rendering
  • Api consistency and style improvements
  • Samples use a native sample framework
  • Support for rendering to a cube-map
  • Fully customizable serialization (implementations for memory and file system)
  • Small bug fixes and improvements
  • Dynamic hair pins
  • Tether hair pins
  • Hair pin mesh ornaments


NVIDIA HairWorks 1.2 for DirectX12 is under active development, and is NOT AVAILABLE within this public release. The documentation on DirectX12 usage and the Sdk headers are for illustrative purposes only and may be subject to change. Early access to HairWorks 1.2 for DirectX12 is available to developers on request at

Known Limitations

  • No multi material support for any mesh type in the HairWorks viewer.
  • Currently there is no support for adding extra animation files via fbx in the HairWorks viewer.
  • Shadows may flicker a bit depending on the asset in HairWorks viewer. This is due to shadow resolution and depends on the shadow sampling techniques used in a given game engine.
  • Guide hairs must be placed on the vertex of a growth mesh. DCC plug ins will move guides to closest vertex if they are not properly aligned.
  • Only one guide per vertex is supported. Extra guides on vertex will be ignored at export.
  • Number of cv/knot sampling per guide hair is the same per asset. Sampling is adjusted in DCC.
  • Hair Interaction does not opperate between hairs of different assets.
  • Alpha sorting is not supported. So the root alpha feature must be used with limited range.
  • The viewer currently supports only one character. However the character can have multiple hair assets.

Source Sample Assets

  • Source files were generated with: