For all those character creators out there wanting to attach a metahuman head to their character’s body in UE5, and have had no success - I have discovered the solution. No more floating heads wandering off to god knows where… No more screaming at your computer and cursing human kind.
This has come with considerable cost to my own personal being and untold hours/days/weeks/months of reading and trialing many an offered solution - all to no avail. I would like to credit Surin - for his suggestion with solving the MH head offset issue when attaching to the head socket. His demonstration in UE4.27 was instrumental in working out the issues in UE5+ How to properly attach the metahumans head to any other character in UE4 - YouTube
Solution offered:
- Step by Step procedure for creating a Blue Print Actor that combines a Metahuman Head with a 3rd party character body (3rd party character must be based upon an EPIC Skeleton)
- Add the Blue Print Actor to a Level Sequence and successfully add Animation
Key Terms:
- Blue Print Character Actor - refers to a blue print asset that can be added to a level sequence
- Original Character - refers to the character/body that you want to combine with a Metahuman head
- New BP-Character - refers to your new character blue print containing a 3rd party character body & the head of a Metahuman
- BP = refers to a Blue Print
- MH = refers to a Metahuman
Some Preparation before starting:
Before starting this procedure - please have prepared your original character mesh without a head. You can either remove the head mesh (but not bones) in a 3D modelling program, or Disable the Head Mesh in the LOD 0 section in the Mesh Editor in UE5.
Also, you will need to mask or add a gradient ramp to the neck area of your Metahuman to prevent it from protruding through your original character mesh chest area. link to tutorial and masking material by Monoville https://youtu.be/7iCMspltj24
Part One - Attaching the MH Head to your Character’s Body
Step 1 - Create a New Blue Print Actor and drag your headless original character into the BP
Step 2 - Open your MH blue print - go to Viewport and select the face, fuzz, hair, eyelashes, eyebrows and LODSync. Copy these (Cntl+C)
Step 3 - Return to your New Blue Print Actor Window and paste the face content into your new blue print
Step 4 - Open your original character skeletal mesh in Mesh Editor (just double click skeletal mesh thumbnail). Top right you will see a skeleton icon - click to go to the skeletal tree of your character. Scroll down through Skeletal Tree until you find the head bone. Right Click on Head Bone and select ADD SOCKET. This will give you a socket to attach things to. Press SAVE.
Step 5 - Return to your New Blue Print Actor Window To recap - you will have your headless original character skeletal mesh and the MH face content appearing in your menu. Next ADD a Cube - click on +ADD button and select a Cube.
Step 6 - Scale your Cube to 0.1 in the Details Menu (right). In the Components Menu - Drag the Cube on top of your original character mesh. Select it and drag it one more time on top of your original character mesh. You must drag it twice or it will not sit correctly under the original character mesh. This is an UE5 glitch/issue.
Step 7 - With the Cube still selected - go to the Details Menu and look for Parent Socket. Click on the folder icon next to it and you will see a list of bones appear. If it does not appear - you have not parented the Cube fully (go back & drag it again). In the bones list, select the Head Socket that you created previously. You can select the head bone - but it may have an issue. I found the head socket more successful. The Cube should snap to the top of your neck area
Step 8 - In the Components Menu select the Face and drag it on top of the Cube. The head should now snap to the cube. You may have to move the head slightly to make it sit correctly. Click on the head and move it with the Gizmo until sitting in correct position.
Step 9 - Press Compile and SAVE. Also Press SAVE ALL in your Project - you don’t want to risk losing any work. Unreal Engine is notorious for crashing when doing Blue Print work.
Part Two - Adding Animation to your New BP Character in a Level Sequencer
Step 1 - Drag your New BP Character into your scene.
Step 2 - Create a new Level Sequence
Step 3 - Add a new Cine Camera Actor to your Level Sequence
Step 4 - Drag your BP Character from the Outliner Menu into your level Sequence and drop it onto the Cine Camera Actor
Step 5 - Click on the +Track button that appears on your BP character layer in Sequencer. You will see a menu appear with the original character mesh name included in the lower list. Click on the original character mesh. It will now appear as a new layer below your BP Character in the Sequencer. You have now nominated the skeleton your new BP Character will reference for animation list. Now you must tell the skeleton who to reference the animation to…
Step 6 - This next step is important. You must first attach the Original Character to the New BP Character before the animation will affect your new BP Character. Click on the +Track button on the original character layer that appeared below your BP Character in the Sequencer. Go to ATTACH and select your New BP Character in the list. This will now tell who/what to send the animation reference to.
Step 7 - Now Click on the +Track button on your or original character layer once again and this time you can nominate an animation. This has worked for me using UE5.1 - I sincerely hope it works for you too…
Essentially the two issues that prevented this whole procedure from happening in the past were:-
- The head requiring an unnecessary double action to parent it to the cube in the blueprint
- An unnecessary double action procedure was required to send animation data in a circle; in order to activate a blueprint actor in the level sequencer.