Use PixelHair on any Metahuman or custom character in Unreal

Last Updated: January 23, 2025

In this tutorial, I’ll walk you through the step-by-step process of applying any PixelHair hairstyle to a MetaHuman or Custom Character in Unreal Engine. Whether you’re working on a game, cinematic, or real-time project, this guide will help you seamlessly integrate high-quality hair into your workflow. The Basics Before we dive in, let’s go over some basics. This tutorial is designed for Unreal Engine 5.3.2 and Blender 4.0.1. If you’re using older versions, some steps may look different, but both software are free and can be upgraded if needed. Since we’re focusing on transferring PixelHair (or any hair) from Blender to Unreal, I’m assuming you have a basic understanding of both software. This will help you get the most out of the tutorial. While I won’t be covering every single detail of Blender and Unreal to keep things concise, I’ll guide you through everything necessary to ensure a smooth hair transfer. Thereby, helping you avoid common issues along the way. If you’re ready, let’s get started! Setting Up Your Scene From my understanding, everyone taking this tutorial falls into one of two categories: Both scenarios share the same goal, getting a character and a PixelHair Hairstyle into Unreal Engine.

Applying PixelHair to metahuman or custom character in Blender

Last Updated: February 14, 2025

Now that your MetaHuman or custom character is set up in both Blender and Unreal, it’s time for the next step. Applying PixelHair in Blender before transferring it to Unreal. Applying PixelHair in Blender However, We’ve already covered the step-by-step process of applying PixelHair to a MetaHuman or custom character in a previous tutorial. To avoid repetition, I recommend checking out that section first. Click here to view the PixelHair application tutorial. Once you’ve gone through it, return to this tutorial and continue with the next steps. See you in the next section!

Set Up Your Character in Both Blender & Unreal

Last Updated: February 14, 2025

Before we move forward with getting your character ready for Pixelhair, We need to ensure that your character exists in both Blender and Unreal Engine. For Custom Characters: For MetaHuman Users: Importing a MetaHuman into Unreal Engine What is Quixel Bridge?Quixel Bridge is an Epic Games asset libary that gives you full access to the Megascans collections as well as other assets. It also serves as a connector between the MetaHuman Editor and Unreal Engine, making it easy to import your MetaHuman and other assets into your project. Download Time & Progress The download time depends on your network speed, so feel free to grab a cup of tea ☕ while you wait! A percentage counter will pop up, showing the progress of your download. Locating Your MetaHuman in Unreal Exporting the MetaHuman Head to Blender Now that your MetaHuman is in Unreal, we also need a copy of the character in Blender. This is where we would attach the Pixelhair asset beffore bringing it back to Unreal. Understanding MetaHuman Structure MetaHumans are divided into two parts: For PixelHair, we only need to export the head region. Instead of manually searching for the specific file to export, we’ll use the MetaHuman Blueprint, which makes the process much easier. How to Export the MetaHuman Head Exporting the MetaHuman Head as an FBX After clicking the magnifying glass icon, minimize the Blueprint window and return to the Content Browser. You’ll notice that Unreal has automatically navigated to the storage location of your MetaHuman’s head and highlighted it for you. Steps to Export the Head Mesh: FBX Export Settings for MetaHuman After selecting a save location, an FBX settings popup will appear. MetaHumans use LODs (Levels of Detail) which just means different versions of the same mesh with different amounts of detail. For PixelHair, we only need the highest level of detail. Use the settings in the image below. We don’t need the LODs to install the PixelHair asset. Importing the MetaHuman Head into Blender Now that you’ve exported the top part of your MetaHuman, it’s time to bring it into Blender. Steps to Import the FBX into Blender: Once imported successfully, your MetaHuman head should now appear in the Blender viewport. At this stage, your screen should display something like this: Separating the MetaHuman Head from the Armature in Blender When you import the MetaHuman into Blender, you’ll notice that the bones in the armature are scattered. However, we don’t need to worry about that since our focus is solely on the head mesh. That is what we need in order to correctly install the Pixelhair asset. We can’t simply delete the armature, because the mesh is parented to it. If you delete the armature directly, the mesh will be removed as well which we don’t want considering we need the mesh for the Pixehair asset. Instead, we need to separate the mesh from the armature properly. How to Unparent the Mesh from the Armature: Verifying the Unparenting Process: To make sure it worked: Now, select the armature and press X to delete it. At this point, you should have just the MetaHuman head in Blender and Unreal Engine. Now we can move forward to installing the Pixelhair asset on the mesh.

Exporting PixelHair to Unreal

Last Updated: February 14, 2025

Welcome back! Now that you’ve attached PixelHair to your character or MetaHuman, it’s time to focus on exporting the hair to Unreal. Along the way, there will be some key details to keep in mind, so pay close attention to ensure a smooth transfer. Applying the Shrinkwrap Modifier As you know, the hair mesh tightly conforms to your character or MetaHuman’s head due to the shrinkwrap modifier. This is our starting point before exporting. To lock the hair mesh in place, we need to apply the shrinkwrap modifier so that its default shape becomes the shape of your character’s head. How to Apply the Shrinkwrap Modifier: Preparing PixelHair for Export to Unreal Now that the PixelHair/hair mesh is shaped to your character or MetaHuman’s head, we’re ready to export it to Unreal. However, there’s an important distinction to keep in mind: Since Unreal doesn’t require a mesh for hair, we need to ensure Blender exports only the hair, not the underlying mesh. Here’s how to do that: Hiding the Mesh Before Export Once unchecked, the mesh will become invisible in the viewport, leaving only the hair strands visible. This tells Blender to ignore the mesh during export, ensuring that only the hair itself gets transferred to Unreal Engine. Exporting PixelHair as an Alembic File (ABC) for Unreal If you’ve followed this tutorial closely, you’ll remember that importing and exporting 3D meshes is usually done using formats like FBX or OBJ. However, PixelHair and 3D hair exports work differently. Instead of FBX/OBJ, we’ll use Alembic (.ABC), a format specifically designed for handling hair simulations and strand-based assets between software. Luckily, both Blender and Unreal Engine support Alembic, making this the best method for transferring PixelHair. How to Export PixelHair as Alembic (.ABC) in Blender Below, you’ll find the settings which I use, apply this to your Blender export settings. Importing PixelHair into Unreal Engine Now that you’ve saved your export settings, go ahead and hit ‘Export’. With the export complete, it’s time to switch back to Unreal for the final steps. Organizing Your Project (Optional but Recommended) Before importing, consider creating a new folder in the Content Browser to keep your project organized. This will make it easier to manage assets later. Importing the Alembic File Unreal’s Import Window If everything was exported correctly from Blender, a new import window will appear. As you can see in the image, I’ve highlighted an error message that might appear during import. This error won’t show up for most users, but if you do encounter it, I’ll explain why it happens and how to fix it. Fixing the Unreal Hair Import Issue: Reducing Strand Steps in Blender To resolve this issue, we need to go back to Blender and re-export the Alembic file with fewer than 255 points per strand. Step 1: Reducing Strand Steps in Blender Since strand steps determine the number of bendable points along a hair strand, the only way to reduce points is by lowering the strand steps setting. How to Adjust Strand Steps: Step 2: Handling Visual Changes After Reducing Strand Steps For most hairstyles, this change will work fine. However, for certain styles like dreads, braids, or curly hair reducing strand steps can affect the look of the hair. Compensating for the Loss of Detail: Increase Hair Shape – Slightly thicken the hair strands to maintain volume. Adjust the Kink Type (For Dreads & Braids) – Once you’ve adjusted the settings, proceed with exporting the Alembic file again. Step 3: Re-Importing the Hair into Unreal After exporting, follow the same import process in Unreal Engine as before. This time, you shouldn’t see the error, and all of the PixelHair strands should be properly imported. I’ll meet you in Unreal after importing the hair for the final setup al and attach the PixelHair/hair to the character!

Applying PixelHair to metahuman or custom character in Unreal

Last Updated: February 14, 2025

Unlike the character mesh, you can’t just drag and drop the PixelHair/hair into the Unreal scene. Instead, we need to attach the PixelHair/hair to the character as a component inside the character’s blueprint. This ensures that: The PixelHair/hair follows the character wherever it is used.The hair is always included when the character is referenced in animations, cinematics, or gameplay. Open the Character Blueprint Since PixelHair must be added as a component, we need to open the MetaHuman or custom character blueprint: If you’re using a MetaHuman → Skip to the next section (the blueprint already exists). If you’re using a custom character without a blueprint → Follow the steps below to create one before proceeding.However if you already have a character blueprint like the metahuman, skip the next section ( Adding PixelHair as a Groom Component in the Blueprint ) . Setting Up a Character Blueprint for Custom Characters If you’re using a custom character that doesn’t already have a character blueprint, follow these steps to create one. Create a New Character Blueprint Add Your Character to the Blueprint Before continuing, we need to assign your custom character to the blueprint. With your character blueprint set up, we can move forward in the tutorial Adding PixelHair as a Groom Component in the Blueprint With the character blueprint open, we now need to attach the PixelHair/hair as a Groom Component so it follows the character. Step 1: Add a Groom Component For MetaHumans: For Custom Characters ( With No Groom Component Yet): Step 2: Assign the PixelHair Groom Asset Now, whether you’re using MetaHuman or a custom character, follow these steps: Step 3: Check the Hair in the Viewport To fix the Hair position, we need to bind it to the character’s head. Step 1: Open the Binding Options Step 2: Bind the Hair to the Character Step 3: Return to the Character Blueprint Step 4: Apply the Binding to the Groom Asset Step 5: Confirm the Hair Alignment That’s it! Enjoy Your Character’s New Look Your character is now ready to use with PixelHair in Unreal Engine. You can now freely use, animate, and modify the character with the new hairstyle.