You can import character models with animatable heads into Studio and use the automatically generated FaceControls instance to pose or animate the face.
To set up heads with facial animation in your experience:
Import a model with an animatable head. You can either create your own or use one of the provided reference model files.
(Optional) Import face accessories you want to deform with the facial expressions of your head. You can either create your own or use one of the provided reference accessory files.
Animate the head in the Animation Editor by either adding in individual animation tracks, or by using the Face Animation Editor.
If you want to experiment with pre-made heads before making your own, Roblox has a reference experience you can access to see how heads interact with Studio's interface, as well as two reference models and accessories you can import directly into your own experience:
Reference Files | Description |
---|---|
Head Animation In-Experience Editor | A reference experience that allows you to preview a Goblin and Blocky head with various accessories using an editor. |
Head Schema Reference | A reference experience with a head Blocky model with FaceControls. |
Goblin Character Model | A Goblin character model with an animatable head. |
Blocky Character Model | A Blocky character model with an animatable head. |
Blocky Face Accessories and Clothing | A .zip file of Blocky-specific accessories, including:
|
Importing Face Accessories
You can import and equip face accessories that you want to deform with the facial expressions of your head. For example, when you import and equip eyebrows as a face accessory, you can animate the eyebrows to move with the character's eyes.
By default, when you import a face accessory, it imports as a MeshPart object. Using the Accessory Fitting Tool, you can convert the MeshPart into an Accessory instance that is compatible with the head.
To import a face accessory:
In the Avatar tab, use the 3D Importer to import the custom model into the workspace.
Using the Accessory Fitting Tool, convert the MeshPart into an Accessory instance.
In the Avatar tab, click on the Accessory Fitting Tool. The Accessory Fitting Tool window displays.
In the Explorer window, select the MeshPart you imported as a face accessory. Its name displays in the Part field.
Click the Next button.
In the Clothing category, select Face, then click the Next button.
(Optional) In the Edit panel, use the adjustment options to ensure the accessory fits your model.
In the Preview panel, preview the new facial accessory on your head, then click the Next button. The tool transforms the MeshPart into an Accessory instance, and it displays in the Explorer window.
You can preview the accessory on your imported model by making the Accessory instance a child of your character Model. You can only equip character-specific face accessories with their designed character.
You can also save the Accessory instance to your toolbox and use the asset ID at any time in your experiences. For information on equipping accessories by applying a HumanoidDescription, see Customizing Characters with Humanoid Description.
Accessory Skinning
You can enable the WrapLayer.AutoSkin property in the accessory's WrapLayer instance to apply the skinning of the head to the face accessory. This allows a face accessory to fit and follow a character's expressions without having to apply any skinning influences to it during the 3D modeling process.
The following options are available for the WrapLayer.AutoSkin property:
Disabled: Disables the Automatic Skinning Transfer process. This is the default value.
EnabledOverride: Enables the Auto-Skin Transfer process and allows Studio to override any existing skinning information found on the accessory. Choose this setting when you want to set or replace the existing skinning of an accessory using the Auto-Skin Transfer version.
EnabledPreserve: Enables the Automatic Skinning Transfer process but doesn't allow it to override any existing skinning information found on the accessory. Choose this setting when you want to preserve and maintain any existing skinning of an accessory. If there isn't any skinning to maintain, the Auto-Skin Transfer creates new skinning automatically.
Animating Heads
Animatable head MeshParts include a FaceControls instance which allows you to access your facial pose properties.
You can adjust these properties in the Animation Editor to animate your head. For more information, see Animating Heads.
Troubleshooting
When importing custom head models, the Output window displays an error or warning message if there were any issues during the configuration process.
Error Messages
Error messages indicate a failure to properly import a model with a head. Reference the following table for a summary of all head error messages and troubleshooting tips:
Error Message | Troubleshooting |
---|---|
Failed importing head with facial animation. | The .fbx file is corrupted. |
Found more than one joint named X. All joints must have unique names. | Ensure that every joint that you import has a unique name. |
Failed importing head with facial animation: Correctives can be for at most 3 control names. | Studio found a corrective with more than 3 corrective poses. This isn't supported, so you need to delete the corrective. |
Failed importing head with facial animation: Unrecognized FACS control name X. | X is an unrecognized FACS pose name. Ensure that X is renamed to one of the standard FACS poses. |
Failed importing head with facial animation: Invalid corrective name X: Neutral cannot be part of a corrective. | X is an invalid corrective name. Ensure you are following the correct naming format for correctives. |
Failed importing head with facial animation: Found duplicate FACS control name X for corrective Y. | X is an invalid corrective name. You can only include a base pose that is listed as part of a corrective once in the corrective name. |
Failed importing head with facial animation: Couldn't parse the frame number in Extra Attribute named X. | You must name any extra attributes "Frame0", "Frame1", etc. |
Failed importing head with facial animation: Empty value found for Extra Attribute named X. | The extra attribute X has no value. Add a base pose name or corrective, or delete the extra attribute. |
Failed importing head with facial animation: Duplicate control name found. | You set a FACS pose or corrective to multiple frames. Ensure that each FACS pose or corrective is set to only a single frame. |
Failed importing head with facial animation: Head_Geo has no Extra Attributes that map FACS controls to animation frames. | The "Head_Geo" mesh in the FBX file must have extra attributes in order to animate facial expressions. The imported avatar will not animate facial expressions. |
Failed importing head with facial animation: No frame was set to "Neutral" in animation. | Must have one frame set to "Neutral" in the animation timeline. |
Failed importing head with facial animation: X has not been specified. This is needed for corrective Y. | All base poses for a corrective must be set in the extra attributes. For example, if the Funneler_JawDrop corrective is set, then there must be poses for Funneler and JawDrop alone. |
Failed importing head with facial animation: Missing key frame X for Y. | There is an extra attribute "FrameX" set to Y, but the animation timeline has no frame X. |
Failed importing head with facial animation: No joints were found under DynamicHead. | The .fbx file doesn't have any joints under the RootFaceJoint joint. |
Could not load FACS control data. | There are corrupted joint parameters in the .fbx file. |
Warning Messages
Warning messages indicate a potential issue with an imported head model. Reference the following table for a summary of all head warning messages and troubleshooting tips:
Error Message | Troubleshooting |
---|---|
You have corrective X, but missing corrective Y to support it. This may cause odd deformations. | You set a 3-corrective without setting the base 2-corrective. The imported head will animate, but there might be strange deformations. |
Skipping attribute X: Y | Studio found an extra attribute named X, but since it didn't match the format of "Frame#", it was ignored. |
Control X is nearly identical to Neutral. | The pose for X is very similar to Neutral. Studio reports this in case this was a mistake, but the import will be successful as long as there are no other failures. |
Found only N base poses. Your character may not be able to express itself. | You only defined a subset of base poses in the .fbx file. The import will still be successful as long as there are no other failures. |