In this page, you'll learn about the groom import process and available options when importing an Alembic (*.abc) file with a groom.
Prerequisites
Importing an Alembic file and rendering its groom in Unreal Engine requires the following plugins to be enabled in the Plugins browser:
- Alembic Groom Importer
- Groom
Enabling plugins requires the editor to be restarted. For more information on setting up a project to use grooms, see Setting up a Project to use Grooms.
Groom Import Process
The following flowchart describes the high-level process of bringing your own Alembic files that contain a groom into Unreal Engine and attaching them to an animate skeletal mesh character.

The flow works like this:
- Create your groom in your preferred Digital Content Creation (DCC) application, such as Autodesk Maya.
- Export the groom as an Alembic (*.abc) file.
- Import the Alembic file with the groom into Unreal Engine.
- (Optional) Create a Groom Binding asset in the Content Browser and link it to your skeletal mesh.
- Place the groom asset in the Level.
- This can be done as an actor on its own or as part of a Blueprint using a Groom component.
- Attach the Groom component to a Skeletal Mesh Socket with Transfer Skinning.
- Set up and assign a material using the Hair domain to the groom asset. Once these steps are completed, you will have an interactive groom that you can use on any animated skeletal mesh that it's attached to.
For a more complete walk through of this process, see the Groom Quick Start Guide.
Additional details about setting up your groom for export from your DCC application and import into Unreal Engine are covered in the Alembic for Grooms Specification. It covers the schema that enables Unreal Engine to import grooms directly.
Groom Import Options
When you import an Alembic file with a groom, the Groom Import Options window opens.

The top section of the Groom Import Options dialog describes the validity of the imported groom file. It also includes a list of all the hair attributes which will be imported with this groom. Several attribute types are supported, such as Root UV, per-control point color, and more.

The Conversion section includes options to rotate and scale the groom asset prior to import. This allows application of a global transform to each curve / control point.

Property | Description |
---|---|
Rotation | Sets the rotation in Euler angles (degrees) to fix up or front axes. |
Scale | Scales the value to convert the file unit into centimeters. |
The Preview section includes all the imported groups of the groom. For each group, you can visualize the number of rendering curves and guides, and configure both decimation and interpolation settings. Both settings can be edited later from the Groom Asset Editor after import.

Property | Description |
---|---|
Groups: Index[n] | |
Group Name | The name given to this group. |
Group ID | The ID given to the hair strands in this group. |
Curve Count | The number of hair strands within this groom group. |
Guide Count | The number of simulation guides within this groom group. |
Interpolation: Decimation Settings | |
Curve Decimation | Reduce the number of hair strands in a uniform manner. |
Vertex Decimation | Reduce the number of vertices for each hair strand in a uniform manner. |
Interpolation: Interpolation Settings | |
Guide Type | Select the type of guides to use for groom simulation:
|
Generated guide density | Density factor for converting hair into guide curve if no guides are provided. This value should be between 0 and 1, and can be thought of as a ratio / percentage of strands used as guides. |
Rigged guide num. curves | Number of guides that are generated on the groom and the skeletal mesh. |
Rigged guide num. points | Number of points / bones per generated guide. |
Interpolation Quality | Defines the quality of the interpolation when interpolating guides motions onto the strands. Select one of the following options:
|
Interpolation Distance | Defines the metric used for pairing guides and strands together. Select one of the following options:
|
Randomize Guide | When enabled, the guides used for interpolation are slightly randomized to break up clumps that can happen. |
Use Unique Guide | When enabled, a single guide is used for motion interpolation. |