Hello Creators!
Welcome to the April - May 2023 recap for the 3D Importer! To keep you in the loop, we’ll be experimenting with more general updates to cover smaller feature releases, bug fixes, and other notable plans we have to improve your import workflows. We’re committed to making the 3rd-party-to-Roblox content pipeline better every day, and we hope that this recap will give you a glimpse into some of our progress.
Let’s dive in!
New Features
Dynamic Heads Support
Dynamic Heads and facial animations are now supported. With this feature, we hope to be at full parity with the Legacy Avatar Importer and will work to unify them soon! To learn more about Dynamic Heads and how to use them, please refer to the documentation below:
- Facial Animation | Documentation - Roblox Creator Hub
- FACS Poses Reference | Roblox Creator Documentation
Rest Pose Override for Animation Import
Previously, the importer used the first frame of the first animation as the rest pose from which animations are calculated from. This used to force creators to make the first frame of their animation the rest pose, instead of making it the pose their animation should start in.
We continue to choose the first frame of the first animation as a default option, but now you can override this choice in the Animation Settings in the importer by selecting which animation you want the rest pose to come from. If you want an animation to start in a crouch pose, you can simply include a second animation in the file that begins in the rest pose and select that animation as the animation you want the rest pose to be deduced from.
We hope this leads to greater flexibility throughout our animation import process.
Cages for Static Meshes
Cages can now work on imports that aren’t rigs. This can be useful when modeling static meshes that need layered clothing deformation, such as mannequins. This feature is on by default, and an option has been added to the settings to control it. If you want the importer to ignore cages in the file, you can toggle Uses Cages.
Fixed Bugs
- Skinned rigs with more than 20K triangles should now be properly auto-simplified.
- An issue caused by having multiple texture objects under one mesh has been fixed.
- Mesh pivots from Maya exported FBXs now can be imported.
Looking Forward
Avatar/Rig Feature Parity for glTF
We are actively working to deliver rigging and animation support for glTF files, as well as working to fix some of the issues that have been brought up from the current glTF beta. Our aim is to have rigs and animations working by early/mid-summer.
Sunsetting Legacy Avatar Importer
We will be sunsetting the Legacy Avatar Importer in the coming months. Our goal is to do so after resolving the last few Avatar bugs in the 3D Importer. This allows us to be one step closer to our goal of supporting a single, unified import pipeline. However, we will not act on this until we have incorporated the majority of your feedback, and do our best to ensure your workflow will be unaffected or even improved.
We are dedicated to ensuring the new importer can do everything the old Avatar importer can do (and more!), so if you see any bug in the new importer, especially if it’s not reproducible in the old one, please report it by following the How to Post a Bug Report guide.
Import Configurations
Whenever a new import session is started, we currently reset the settings to a default configuration. If you need to use the same settings across multiple import sessions, you’d have to reapply them each time. We understand how annoying this is and are looking at features that can make this easier.
Coming soon, the importer will be able to remember your last configuration of settings for subsequent imports. We’re looking into extending this by allowing you to save named configurations and set a default as well.
Import Plugin Lua API
We are beginning the process of creating a Lua plugin API providing access to the service that enables the new importer. This is early in the process and we probably won’t see the API until sometime next year. However, if you have suggestions for what you would like to see in such an API, please let us know!
Thanks for reading! Feel free to reply with the coolest things you’ve brought into Roblox; we’d love to see what y’all are making.