Hair Rendering and Simulation Settings and Properties

A list of settings and properties relevant to hair rendering and simulation

Windows
MacOS
Linux

This page contains reference to settings available for different Components and Actors that use Hair for rendering and simulation in Unreal Engine 4 (UE4).

Groom Actor

The following properties are available from the Groom component's Details panel.

GroomActorSettings.png

Property

Description

Materials

Element [N]

Assign your Hair Material to this Asset slot.

Groom

Groom Asset

Hair Strand Asset used for rendering.

Bind Groom to Skeletal Mesh

When activated, the hair groom will be attached and skinned onto the mesh if the Groom Component is a child of a Skeletal Mesh/Skinned component. It requires the following project settings: Compute Skin Cache enabled and Tick Animation on Skeletal Mesh init disabled.

Source Skeletal Mesh

The Skeletal Mesh on which the groom has been authored. If no source is specified, the Skeletal Mesh on which the Groom componentis attached will be used. If one is specified, both the Skeletal Meshes needs to share the same topology.

Binding Asset

An optional Binding Asset for binding a groom onto a Skeletal Mesh. If the Binding Asset is not specified, the projection is done at runtime, which implies a large GPU cost at statup time.

Groom Groups Desc

Groom's group information:

Hair Count

The number of hairs within this hair group.

Guide Count

The number of simulation guides within this hair group.

Hair Length

The length of the longest hair strands.

Hair Width:

Overrides the hair width (in centimeters).

Hair Root Scale

The scale of the hair width at the root.

Hair Tip Scale

The scale of the hair width at the tip.

Hair Clip Length

The normalized hair clip lenght. For instance, at which length the hair will be clipped. 1 means no clipping, and 0 means hairs are fully clipped.

Hair Shadow Density

Controls the hair density to reduce or increase hair count during shadow rendering. It enables you to inrease/decrease the shadowing on hair when the number of strands is not realistic.

Hair Raytracing Radius Scale

Scales the hair geometry radius for ray-tracing effects, such as shadows.

Lod Average Vertex Per Pixel

The targeted budget of hair vertex per pixel. Cluster strands will be decimated based on that. This property is used when 'r.HairStrands.Cluster.Culling' is enabled.

Lod Bias

Sets the bias for the selected level of detail (LOD). A value greater than 0 will progressively select lower detailed LODs. This property is used when 'r.HairStrands.Cluster.Culling' is enabled.

Use Stable Rasterization

This property ensures the hair does not alias. When enabled, groups of hairs might appear thicker. Isolated hair should remain thin.

Scatter Scene Lighting

This property lights hair with the scene color. It is used for vellus/short hair to bring light from the surrounding surface, like skin.

Groom Asset

The following properties are available in the Groom Asset that is created in the Content Browser when importing an Alembic (*.abc) file that contains a hair groom.

Groom_AssetProperties.png

Property

Description

Hair Groups

Group ID

The group ID assigned to this imported hair groom.

Curve Count

The number of curves contained in the imported groom file.

Guide Count

The number of guides contained in the imported groom file.

Auto-Generated Guides

This is checked when Override Guides is enabled during import of a groom file.

Import Options

Override Guides

Overrides imported guides with generated ones.

Hair to Guide Density

Density factor for converting hair into guide curve if no guides are provided.

Interpolation Quality

Interpolation data quality:

  • Low: Builds interpolation data based on nearest neighbor search. Low quality interpolation data, but fast to build, taking only a few minutes.

  • Medium: Builds interpolation data using curve shape matching search but within a limited spatial range. This is a tradeoff between Low and High in terms of quality and build time, which can take several minutes.

  • High: Builds interpolation data based on curve shape matching search resulting in high quality interpolation data. But it is relatively slow to build, taking several dozen minutes.

Interpolation Distance

Interpolation distance metric:

  • Parametric: Builds interpolation data based on curve parametric distance.

  • Root: Builds interpolation data based on distance between guide's root and strand's root.

  • Index: Builds interpolation data based on guide and strands vertex indices.

Randomize Guide

Randomize which guides affect a given hair strand.

Use Unique Guide

Forces a hair strand to be affected by a unique guide.

Material

Assign a default Material to be used by this Groom Asset.

Hair Physics

Solver Settings

Enable Simulation

Enables the simulation on the group.

Niagara Solver

Select the Niagara solver to be used for simulation. Choose from Cosserate Rods, Angular Springs, and Custom Solver.

Custom System

Add a custom Niagara system to be used if the Custom Solver is picked for the Niagara Solver property.

Sub Steps

The number of sub steps to be done per frame. The actual solver calls are done at 24 frames per second.

Iteration Count

The number of iterations to solve the constraints with the xpbd solver.

External Forces

Gravity Vector

The acceleration vector measured in cm/s2 to be used for the gravity.

Air Drag

The coefficient between 0 and 1 to be used for air drag.

Air Velocity

The velocity of the surrounding air measured in cm/s.

Material Constraints

Bend Constraint

Solve Bend

Enables the solve of the bend constraint during the xpbd loop.

Project Bend

Enables the projection of the bend constraint after the xpbd loop.

Bend Damping

Damping applied for the bend constraint using a value between 0 and 1.

Bend Stiffness

The stiffness for the bend constraint in GPa.

Stiffness Scale

The curve determines how much the bend stiffness is scaled along each strand. The X axis range is 0,1. 0 maps to the root and 1 to the tip.

Stretch Constraint

Solve Stretch

Enables the solve of the stretch constraint during the xpbd loop.

Project Stretch

Enables the projection of the stretch constraint after the xpbd loop.

Stretch Damping

The damping for the stretch constraint using a value between 0 and 1.

Stretch Stiffness

The stiffness for the stretch constraint in GPa.

Stiffness Scale

The curve determines how much the stretch stiffness is scaled along each strand. The X axis range is 0,1. 0 maps to the root and 1 to the tip.

Collision Constraint

Solve Collision

Enables the solve of the collision constraint during the xpbd loop.

Project Collision

Enables the projection of the collision constraint after the xpbd loop.

Static Friction

The static friction used for collision against the Physics Asset.

Kinectic Friction

The kinetic friction used for collision against the Physics Asset.

Strands Viscosity

The viscosity between 0 and 1 that is used for self-collision.

Grid Dimensions

The dimension of the grid used to compute the viscosity force.

Collision Radius

The radius that will be used for the collision detection against the Physics Asset.

Radius Scale

The curve determines how much the collision radius is scaled along each strand. The X axis range is 0,1. 0 maps to the root and 1 to the tip.

Strands Parameters

Strands Size

The number of particles per guide that will be used for simulation.

Strands Density

The density of strands measured in g/cm3.

Strands Smoothing

The smoothing between 0 and 1 of the incoming guides curves for better stability.

Strands Thickness

The strands thickness in centimeters that will be used for mass and inertia computation.

Thickness Scale

The curve determines how much the strands thickness is scaled along each strand. The X axis range is 0,1. 0 maps to the root and 1 to the tip.

Hair Interpolation

Enable Global Interpolation

Enables radial basis interpolation to be used instead of the local skin rigid transform.

Hair Interpolation Type

Select the type of interpolation to use when the groom is bound to a Skeletal Mesh:

  • Offset Transform: Only the translation of the root closest skin triangle is used during interpolation.

  • Smooth Transform: The translation of the root closest skin triangle and a smooth rotation computed from the guide are used during interpolation.

  • Rigid Transform: Both the translation and rotation of the root closest triangle are used during interpolation.

File Path

Source File

The drive file path to the source groom file that was imported.

Hair Lab

Asset User Data

An array of data stored with the asset.

Groom Import Options

The following import options are available when importing an Alembic (*.abc) file that contains a hair groom.

GroomImportOptions.png

Property

Description

Conversion

Rotation

Rotation in Euler angle in degrees to fix up or front axes.

Scale

Scale value to convert file unit into centimeters.

Build Settings

Override Guides

Overrides imported guides with generated ones.

Hair to Guide Density

Density factor for converting hair into guide curve if no guides are provided.

Interpolation Quality

Interpolation data quality:

  • Low: Builds interpolation data based on nearest neighbor search. Low quality interpolation data, but fast to build, taking only a few minutes.

  • Medium: Builds interpolation data using curve shape matching search but within a limited spatial range. This is a tradeoff between Low and High in terms of quality and build time, which can take several minutes.

  • High: Builds interpolation data based on curve shape matching search resulting in high quality interpolation data. But it is relatively slow to build, taking several dozen minutes.

Interpolation Distance

Interpolation distance metric:

  • Parametric: Builds interpolation data based on curve parametric distance.

  • Root: Builds interpolation data based on distance between guide's root and strand's root.

  • Index: Builds interpolation data based on guide and strands vertex indices.

Randomize Guide

Randomize which guides affect a given hair strand.

Use Unique Guide

Forces a hair strand to be affected by a unique guide.

Binding Asset Options

The following properties can be set when creating a Binding Asset for a Groom Asset.

BindingAssetOptions.png

Property

Description

Conversion

Source Skeletal Mesh

The Skeletal Mesh on which the groom was originally authored. This is an optional slot, and is only used if the hair binding is done on a different Skeletal Mesh than the one which it has been authored.

Build Settings

Target Skeletal Mesh

The Skeletal Mesh on which the groom is attached to.

Hair Interpolation

Num Interpolation Points

The number of points used for rbf interpolation.

Binding Asset

The following options are available when you create a Binding Asset for a Groom Asset.

BindingAsset.png

Property

Description

Build Settings

Groom

The Groom Asset that this Binding Asset is attached to.

Source Skeletal Mesh

The Skeletal Mesh on which the groom was originally authored. This is an optional slot, and is only used if the hair binding is done on a different Skeletal Mesh than the one which it has been authored.

Target Skeletal Mesh

The Skeletal Mesh on which the groom is attached to.

Hair Interpolation

Num Interpolation Points

The number of points used for rbf interpolation.

Hair Groups

Curve Count

The number of curves contained in the imported groom file for this binding asset.

Curve LOD

The number of rendered level of detail curves used for this binding asset.

Guide Count

The number of guides contained in the imported groom file used for the binding asset.

Guide LOD

The number of simulation levels of detail used for this binding asset.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback