TressFX

Effects

tressfx_screenshot

The TressFX library implements AMD’s TressFX hair/fur rendering and simulation technology for DirectX 11. The TressFX technology uses the GPU to simulate and render high-quality, realistic hair and fur. TressFX makes use of the processing power of high-performance GPUs to do realistic rendering and utilizes DirectCompute to physically simulate each individual strand of hair.

Highlights of TressFX 3.1

The biggest update in TressFX 3.1 is a new order-independent transparency (OIT) option we call “ShortCut”. It has bounded memory and potentially higher performance than the full per-pixel linked list (PPLL) method. Note, though, that it does not give quite the same quality result as the PPLL method, and thus represents a memory/performance vs. quality tradeoff.

The ShortCut method works as follows:

  1. Render hair geometry, using a sequence of InterlockedMin calls to update the list of k nearest fragments while computing an overall alpha.
  2. Screen space pass that puts the kth nearest depth in the depth buffer for early z culling in the next step.
  3. Render hair geometry again.  Shade the fragment and write or blend the color (depending on variant).  [earlydepthstencil] focuses shading cost on the front k.
  4. Screen space pass that does the final blending.

Highlights of TressFX 3.0

  • GCN-optimized rendering and simulation
  • Hair and fur support
  • Animation/skinning support
  • Maya plugin provided for authoring
  • Viewer provided for preview
  • Full source code provided

Prerequisites

  • AMD Radeon™ GCN-based GPU (HD 7000 series or newer)
    • Or other DirectX® 11 compatible discrete GPU with Shader Model 5 support
  • 64-bit Windows® 7 (SP1 with the Platform Update), Windows 8.1, or Windows 10
  • Visual Studio 2012, Visual Studio 2013, or Visual Studio 2015

Technical Blogs

Related GPUOpen blog posts

Resources