Uefy is a python script made for Blender 2.8 Beta or above that enables rigify addon to export an Epic Skeleton compatible bone hierarchy. Allowing creation of animations for Unreal Engine 4 marketplace assets.
The script also has some automation tools to pose the character and config the metarig for a quick turnover.
I made this script primarily for my own project based on Unreal Engine 4. As an indie developer it is not feasible for me to purchase Maya, just to use the ART tool provided by Epic Games for rigging characters.
Blender provides a great free and open source alternative.
However default bone hierarchy made by Blender’s rigify addon causes issues with Unreal Engine. This script modifies the output to make it compatible. Providing an advanced rigging solution for Unreal Engine 4 without the need for expensive software.
|Auto Build Skeleton||Automatially build Unreal Engine 4 mannequin primary bone chain ready for export. Manually add any extra bones on top of the auto build.|
|Auto Weight Transfer*||Automatically Transfer existing weight painting to new skeleton from compatible characters
|Auto Config Metarig*||Automatically modify the metarig to match Epic Skeleton bone chain and add primary and secondary twist bones.|
|Auto Pose Metarig*||Automatically pose the metarig limbs to target character's pose with the click of a button
|Auto Pose Character*||Automatically pose compatible target character's limbs to match pose of UE4 mannequin (A-pose)
|Supports UE4 Mannequin||Import UE4 mannequin into Blender have it fully rigged with rigify and ready to export back to UE4 within minutes
|Supports Fuse CC characters||Import a default Fuse CC character rigged with Mixamo's service and have it fully rigged with rigify and ready for UE4 within minutes.
BONUS: will auto add Hand and Foot IK and twist bones for full compatibility with Epic Skeleton. Supports Root Motion!
|Partially Supports Paragon Characters||Import a Paragon character and have 80% of the work done to a fully rigged character within mintues
Python scripting knowledge may be required to create your own custom mappings for other types.
See FAQ below for other limitations and requirements
How to Get / Download
This script is available for sale as a digital download via FastSpring.
Purchasing a copy financially supports the developer and helps ensure continued development.
Full Playlist of Tutorials here
For in-depth questions on using Rigify or Blender please consult their documentation.
It adds a Panel to the armature data section with operators that enable Blender’s rigify addon to export a skeleton compatible with the Unreal Engine 4.
It also adds useful functions to speed up the process of rigging Epic Skeleton compatible characters.
A download link is sent by email upon successful purchase of the script. You can purchase the script here.
Future upgrades to the script will be available from the same download link. Do not delete the email
The downloaded zip file consist of the Uefy python script, a Readme and the full text of the License.
All updates to the same major version number will be free of cost. You can use your original download link to get the latest update.
e.g. if you purchased v1.0 then v1.1 and so on will be free.
The same download link you receive with your original purchase will be used to provide updates. Do not delete the email with the link.
The script is licensed under GNU GPLv3 (https://www.gnu.org/licenses/gpl-3.0.txt)
This script is not a Blender addon, hence you do not install it like an addon. Keeping the code as just a script allows for per project customization. Just load the script and run it once when you need it.
To run the script open Blender’s “Scripting” layout. Click on the open button and navigate to the script and select it. Afterwards scroll to the end of the bar and click on “Run Script”.
The script is specifically designed for Blender 2.8 Beta and above. It will not work with previous Blender versions due to significant python API changes introduced in the latest version.
Note: Blender 2.8 Beta is still under development at the time of this writing.
You can download the Beta from the following web page:
Note: Blender 2.8 Beta is still under development at the time of this writing.
Create a new third person project from the Epic Launcher. Start the editor and find the Mannequin’s mesh. You can right click the mesh then do “Asset Actions -> Export” to a location of your choice. The default export options work for Blender 2.8 Beta.
Only limited support is provided in the form of community posts and publicly available instructional videos.
At this time there is no paid or advanced support to address individual user issues or customization. But it might be provided in the future.
Due to the sheer number of possibilities this is not practical. You must use the provided example custom mapping to create your own.
I am not an animator or a rigger. I can not instruct you in how to animate or create new rigs. Uefy Script will let you use Blender 2.8’s rigify system with Unreal Engine by changing its default export.
But learning how to use Rigify or Blender is not something I can help you with. Please refer to documentation for Blender and Rigify.
Limitations and Requirements
Uefy script will work with characters with a similar bone hierarchy structure as the Epic Skeleton. You may need to rename the bones and use bone rotation tools provided by the script to meet requirements.
A video showing the whole process is available on the youtube channel.
Yes .. that was the whole point of this exercise 🙂
Check the step by step video on the rigging the mannequin here
The script has only been tested and known to work for sure with the default human made character in FuseCC rigged with the Mixamo service.
Any other character types will depend on the bone hierarchy they end up with. If they have the same bones as the default rigged characters then the script will work.
You will need to ensure the character is symmetrical with same pose and size for limbs on both sides.
Mixamo Rigging Options need to be:
Skeleton LOD: Standard Skeleton (65)
Facial Blendshapes: Disabled
Yes you can.
Beware that the original UE4 Mannequin requires bone rolls that are incompatible with the way Blender 2.8 works. You will need to maintain two separate blend files. One to create animations and another to export with bone rolls that support import into the engine with the original UE4 mannequin skeleton.
A detailed video on this process is available on the youtube channel.
You can pose the character manually and pose the metarig using the UE4 Mannequin as a target. This will fix the metarig and add twist/other bones.
After that generate the rig and parent the character to the rig as usual. “Build Unreal Skeleton” does not rely on anything from the target character. So the rig will still work and you can still animate and export to Unreal Engine.
Only limitation is the posing functionality for the character is not available.
You can add additional bones to the metarig after posing. The generated rig will correctly create the controls and widgets.
However at this time Uefy Script does not automatically add extra bones to the primary Epic Skeleton. An exception to this is the facial rig and extra twist bones which must be selected while posing the metarig.
All other extra bones must be manually duplicated and added to the Epic Skeleton deform chain. This is time intensive process but it does work. A video tutorial on how to do this is planned.
Future updates to the script may be able to automate this process or atleast make it simpler, it is on the wishlist.
Uefy 1.2 now support some ability to add new bones in a semi-automatic way. Currently you can add the following samples:
You can follow this tutorial to see examples of how to register new bones: https://youtu.be/2xVF9QFu-Bw
Please note due to the way rigify organizes bones it is not possible to add child bones to new samples using the bone register opertator. In those cases you may still be able to add child bones by manually editing the rig. Example: https://youtu.be/yu0hXxn1lu0
The current workflow is to manually add custom bones to the bone hierarchy created by the script. Since the script is not aware of these extra bone, regenerating the rig from that point on will delete the custom bones and you’ll have to readd them.
I have a few ideas on how to automate this process so the deleted bones are readded. I hope to add that feature in a future update. But for now the workflow is to finalize the base skeleton bones so you don’t need to regen the rig anymore and only then start adding custom bones to the rig.
The target character’s bone hierarchy must be the same as the Epic Skeleton or the bone hierarchy must be compatible and custom mapping and custom roll data be filled out in the script.
Default custom mapping and custom roll data is filled out for FuseCC default human characters rigged with mixamo.
Posing the metarig requires a successful preprocess by renaming bones in the target character. See FAQ on preprocess for details.
Additionally the script is designed to work only with the default metarig as it appears when using the Add -> “Human (Meta-rig)” operator. The script relies on bone names to keep track of operations so you can not change any of the names. However you can freely add additional bones and rename them as long as the bone was not part of the original metarig or added by the script itself e.g. the twist bones etc.
A recommended workflow would be to add a new default meta-rig. Use the script to pose it and only then add additional bones if needed without touching any of the existing ones.
A successful pre-process (Setup bone names) on the target character must be run before this step.
You need to have UE4 mannequin in the scene and correctly selected in the Uefy Script Panel options. The type must be set to Epic Skeleton or Custom Mapping depending on the bone hierarchy of the target character.
If your target character does not have an Epic Skeleton then custom mapping and custom roll values in the script must be set correctly. An example mapping for Fuse CC character rigged with mixamo service is provided in the script by default.