description: In-depth description and images of various caging best practices for layered clothing.
---
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/QwZaA9Gc-WQ"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/QwZaA9Gc-WQ"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<br/><br/>
Caging is a complex process required to define the inner and outer surface of a layered clothing item. Properly caged assets allow your clothing items to stretch and layer in combination with each other. Cages that are improperly configured can lead to cosmetic issues with the look and feel of your clothing item.
@ -174,7 +174,7 @@ Assets with invalid cage configurations may fail validation and are subject to m
For a basic overview on caging, see the [Basic Clothing Tutorial](../accessories/creating/caging-setup.md) and the relevant section of the tutorial video at [8:32](https://www.youtube.com/watch?v=C-DwGRBHvmE&t=512s):
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/C-DwGRBHvmE"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/C-DwGRBHvmE"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/Eed29gV0hLA"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/Eed29gV0hLA"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<br/><br/>
Rigid accessories are 3D objects that users can equip to their avatar characters in an experience or through Roblox's [Marketplace](https://www.roblox.com/catalog) and [Avatar Editor](https://www.roblox.com/my/avatar).
@ -41,6 +41,6 @@ You can check your accessory's moderation status in the [Creator Hub](https://cr
After moderation completes, your item's publishing details become available to edit and enable for sale. See the following for an overview on the various sale options available:
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/swQW2VS9ZMA"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/swQW2VS9ZMA"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<br/>
After listing an asset to the Marketplace, you can return to this page to edit your item's sale details, or take the item offsale.
@ -4,7 +4,7 @@ description: This tutorial covers the basic steps required in Blender to Studio-
next: /art/accessories/creating/modeling-setup
---
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/C-DwGRBHvmE"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/C-DwGRBHvmE"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<br/><br/>
You can create your own custom avatar clothing using Blender and Roblox's downloadable project templates. These project templates include [components required for layered clothing](../../../art/accessories/layered-clothing.md#components-of-a-layered-clothing-accessory), and can double as a mannequin to quickly begin shaping and sculpting your clothing assets. By the end of this tutorial, you will have a clothing asset that contains all the required components for a layered clothing accessory on the Marketplace.
@ -187,7 +187,7 @@ After generating your `Class.Accessory` item, you can now begin the process of *
For additional information and instructions on this process, see [uploading and publishing instructions](../../marketplace/publish-to-marketplace.md).
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/swQW2VS9ZMA"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/swQW2VS9ZMA"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<br/>
You now have your accessory added to the Marketplace catalog! Use the item's Marketplace link to view your listing at any time, or to send to your connections and followers for additional engagement.
@ -20,6 +20,15 @@ When creating heads intended for the Marketplace, ensure that your head meets Ro
Using third-party modeling tools, you can either modify a rigged character model to meet head requirements, or create a head from scratch. For step-by-step instructions on how to add face bones, apply skinning, posing, and mapping poses on a head model in Blender, see [Create basic heads](../../../art/characters/facial-animation/create-basic-heads.md). This guide includes several reference files you can use to compare and track your progress.
### Resources
Heads designated for the Marketplace require specific components to ensure universal support across Roblox's platform. Heads are often the most complex part of an avatar character. Use the following docs to best equip your assets to pass validation and work well with other assets:
- Understand how Roblox tests facial animations in the [validation process](../head-validation.md) and learn common issues that you can self-resolve.
- Similar to character bodies and clothing, Marketplace heads must also follow [Roblox's specifications](../head-specifications.md).
- Ensure that you are following Roblox's [head caging best practices](../face-caging-best-practices.md) to ensure the best results for clothing, validation, and makeup.
- Use the [FACS poses reference](../../../art/characters/facial-animation/facs-poses-reference.md) when posing and mapping your head.
## Create face accessories
Similar to creating heads, you can design and model face accessories using a third-party modeling software and import the models as a cosmetic `Class.Accessory` in Studio. When created correctly, equipped accessories stretch and deform as the head animates and emotes.
@ -36,7 +45,3 @@ If you're interested in animating a head, for use in-experience or to further te
Heads are often the most complex part of an avatar character. Ensure that you are following Roblox's [head caging best practices](../face-caging-best-practices.md) and verify your FACS poses using the [FACS poses reference](../../../art/characters/facial-animation/facs-poses-reference.md).
@ -5,68 +5,308 @@ description: The Avatar Validation Tool checks for common character model issues
The following table compares the classic decals with the dynamic head equivalent.
<Alertseverity ='warning'>
The references below are not final and are subject to change. We encourage you to provide feedback on specific heads on the [DevForum announcement](https://devforum.roblox.com/t/completing-the-dynamic-head-migration/4301387).
<tr><td>****Teal Rock Star Smile****</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Teal_Rock_Star_Smile.png"/></td></tr>
<tr><td>**The Dog Whisperer**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/The_Dog_Whisperer.png"/></td></tr>
<tr><td>**The First Time I Ever Played ROBLOX**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/The_First_Time_I_Ever_Played_ROBLOX.png"/></td></tr>
<tr><td>**Torque the Green Orc**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Torque_the_Green_Orc.png"/></td></tr>
<tr><td>**And then we'll take over the world!**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/And_Then_Well_Take_Over_The_World_12732366.png"/></td></tr>
<tr><td>**Butterfly Wink - Lil Nas X (LNX)**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Butterfly_Wink_Lil_Nas_XLNX_7657646351.png"/></td></tr>
<tr><td>**Cat Eye - Zara Larsson**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Cat_Eye_Zara_Larsson_7893455671.png"/></td></tr>
<tr><td>**Devil Nas X - Lil Nas X (LNX)**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Devil_Nas_X_Lil_Nas_XLNX_7657657626.png"/></td></tr>
<tr><td>**Diamond Grill - Lil Nas X (LNX)**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Diamond_Grill_Lil_Nas_XLNX_7657627637.png"/></td></tr>
<tr><td>**Glittering Eye - Zara Larsson**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Glittering_Eye_Zara_Larsson_7893460486.png"/></td></tr>
<tr><td>**Glory on the Gridiron**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Glory_On_The_Gridiron_21802396.png"/></td></tr>
<tr><td>**I <3 New Site Theme**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/I3_New_Site_Theme_32723404.png"/></td></tr>
<tr><td>**I Am Not Amused**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/I_Am_Not_Amused_7131886.png"/></td></tr>
<tr><td>**I Didn't Eat That Cookie**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/I_Didnt_Eat_That_Cookie_116042990.png"/></td></tr>
<tr><td>**I Hate Noobs**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/I_Hate_Noobs_14030577.png"/></td></tr>
<tr><td>**Neoclassic Male v2 - Face**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Neoclassic_Malev2_Face_4637291815.png"/></td></tr>
<tr><td>**Rodeo Vampire - Lil Nas X (LNX)**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Rodeo_Vampire_Lil_Nas_Xlnx_5917448278.png"/></td></tr>
<tr><td>**Rogueish Good Looks**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Rogueish_Good_Looks_1665511048.png"/></td></tr>
<tr><td>**Sharpnine's Face of Disappointment**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Sharpnines_Face_Of_Disappointment_209994270.png"/></td></tr>
<tr><td>**Sly Guy Face**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Sly_Guy_Face_238983378.png"/></td></tr>
<tr><td>**Smil Nas X - Lil Nas X (LNX)**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Smil_Nas_X_Lil_Nas_XLNX_5917459717.png"/></td></tr>
<tr><td>**So Super Excited - Blue**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/So_Super_Excited_Blue_2569001052.png"/></td></tr>
<tr><td>**So Super Excited - Pink**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/So_Super_Excited_Pink_2568801198.png"/></td></tr>
<tr><td>**Sparkle Time Sparkle Eyes**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Sparkle_Time_Sparkle_Eyes_2620507161.png"/></td></tr>
<tr><td>**Sunrise Eyes - Tai Verdes**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Sunrise_Eyes_Tai_Verdes_7987201392.png"/></td></tr>
<tr><td>**Tohru: The Phantom Claw's Face**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Tohru_The_Phantom_Claws_Face_1384270693.png"/></td></tr>
<tr><td>**Too Much Candy**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Too_Much_Candy_295763789.png"/></td></tr>
<tr><td>**Vans Checkerboard Blue Eyes**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Vans_Checkerboard_Blue_Eyes_8247356154.png"/></td></tr>
<tr><td>**Visual Studio Seized Up For 45 Seconds... Again**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Visual_Studio_Seized_Up_For45_Seconds_Again_14083380.png"/></td></tr>
<tr><td>**Walk the Plank You Scurvy Dogs!**</td><tdcolspan="2"><imgsrc="../../assets/art/avatar/classic-head/Walk_The_Plank_You_Scurvy_Dogs_13478124.png"/></td></tr>
@ -10,18 +10,12 @@ This content is for creators who intend to create character heads designated for
Character models designed to be sold on the Marketplace require a specific set of components and configuration standards to ensure all avatar features work as expected. The following guidance applies to character model heads to ensure universal support for head accessories and facial animations.
<Alertseverity ='warning'>
For information on character body requirements, see [character specifications](./specifications.md).
Validation for heads use a specialized process that may require adjustment of your existing head asset. For more information, see [validation process](./head-validation.md).
</Alert>
To pass Marketplace validation, a dynamic head requires:
1. A configured [head cage](#head-cage), with distinct eye and mouth landmarks.
2. [FACS controls](#facs-animation) to enable basic facial movements.
Validation verifies that landmarks on the head mesh, denoted by the cage projections, must deform correctly when facial animation is applied for the basic movement tests.
[Avatar auto-setup](../../avatar-setup/auto-setup.md) is an automated tool that automatically generates components for your avatar character, **including the head cage and facial animation** required for Marketplace character models. You can save time by submitting character models without avatar components into the auto-setup tool and modifying the output.
You can test and refine your auto-setup output by using the Avatar setup tool previews. You can even download your output as a `.gltf` and adjust the FACS or cage data in your DCC tools.
@ -29,9 +23,14 @@ You can test and refine your auto-setup output by using the Avatar setup tool pr
You can alternatively manually modify your own cages and FACS animations within your DCC tools, which may require more time or additional iteration in your workflow, such as weight-painting adjustments, to ensure it meets Marketplace policies.
To submit issues or feedback regarding the avatar auto setup tool, submit a [bug report](https://devforum.roblox.com/c/bug-reports/10).
</Alert>
## Head cage
<Alertseverity ='warning'>
The head cage is used to verify animations during validation. see [validation process](./head-validation.md).
</Alert>
Similar to other avatar body parts, an outer cage is required for the head. [High-quality cages](#caging-quality) ensure accessories and clothing items fit properly over the head. Head cages also serves to establish [facial landmarks](#facial-landmarks) for the eyes and mouth of the face for animation validation.
### Caging quality
@ -40,7 +39,7 @@ For details on improving the quality of your head cage, see [Face cage optimizat
### Facial landmarks
During validation, Roblox projects the cage eye/mouth regions to the base mesh to identify the eyes and mouth regions of your character head. These landmarks on the base mesh are used to track the correct deformations of your head when testing for the [minimum FACS poses](#facs-animation).
During validation, Roblox projects the cage eye/mouth regions to the base mesh to identify the eyes and mouth regions of your character head. Even for non-humanoid faces that don't include visual eyes or mouths, it's important to ensure that these landmarks still exist and can be projected over your base mesh. For more information on this process, see [validation process](./head-validation.md).
Roblox expects the following 3 distinct landmarks in your cages:
@ -68,7 +67,9 @@ Roblox expects the following 3 distinct landmarks in your cages:
</GridContainer>
<Alertseverity ='error'>
Even for non-humanoid faces that don't include visual eyes or mouths, it's important to ensure that these landmarks still exist and can be projected over your base mesh.
The mouth landmark vertices are on the **second loop** of vertices from the mouth opening. This precision may help prevent issues with [landmark validation](./head-validation.md#landmark-projection).
@ -95,7 +96,7 @@ Roblox supports facial animation on character heads and can support more than 50
While the 17 poses are a minimum requirement, it's recommended to include as many facial poses as possible in your asset to improve expressiveness and facial animation fidelity for facial animation and avatar chat.
To pass validation, the character head must successfully perform the following 5 facial actions. If the head can't deform at the points of the [cage landmarks](#head-cage) for these facial actions, validation fails for the asset.
To [pass validation](./head-validation.md), the character head must successfully perform the following 5 facial actions. If the head can't deform at the points of the [cage landmarks](#head-cage) for these facial actions, validation fails for the asset.
description: In-depth details on how Roblox validates head assets
---
<Alertseverity ='info'>
This content is for creators who intend to create character heads designated for the Marketplace, or any character heads that support assets from the Marketplace.
</Alert>
Roblox runs a rigorous validation to ensure the asset being uploaded to the Marketplace is compatible with all other assets on the Marketplace. For heads, validation primarily ensures that the head asset includes:
- A correctly **configured cage** — to wear clothing and accessories.
- Correctly configured **facial animation poses** — to perform basic universal expressions, such as blinking and smiling.
The primary validation check for heads [uses the cage to detect facial animation](#facial-animation-detection). See below for a reference of how validation processes, as well as [common issues](#common-issues).
<Alertseverity ='warning'>
Validation also checks for other issues, such as poor caging or missing required FACS poses. For more information, see [common issues](#common-issues).
[Avatar auto-setup](../../avatar-setup/auto-setup.md) is an automated tool that automatically generates components for your avatar character, **including the head cage and facial animation** required for Marketplace character models. You can save time by submitting character models without avatar components into the auto-setup tool and modifying the output.
You can test and refine your auto-setup output by using the Avatar setup tool previews. You can even download your output as a `.gltf` and adjust the FACS or cage data in your DCC tools.
You can alternatively manually modify your own cages and FACS animations within your DCC tools, which may require more time or additional iteration in your workflow, such as weight-painting adjustments, to ensure it meets Marketplace policies.
To submit issues or feedback regarding the avatar auto setup tool, submit a [bug report](https://devforum.roblox.com/c/bug-reports/10).
</Alert>
## Facial animation detection
One of the primary dynamic head validation checks verifies if your head asset has **visually discernable** animations. To achieve this, the validation tool uses the head cage to ["project" landmarks](#landmark-projection) onto your base mesh.
After these landmarks created, validation [tests various face animation poses](#facial-animation-detection) to ensure that these landmarks move and deform appropriately. Validation succeeds when it detects appropriate movement of the landmarks for eyes closed, mouth open, and basic happy/sad expressions.
Failure to either assign landmarks onto the base mesh, or failure to deform landmarks appropriately can occur for several reasons. For more information, see [common issues](#common-issues).
### Landmark projection
Validation uses the head cage to project landmarks onto the head mesh. This helps Roblox establish where the eyes and mouth are and helps guide the facial animation test.
<figcaption><center>Head mesh: All landmarks projected from cage mesh to head mesh.</center></figcaption>
</figure>
</center>
<Alertseverity ="success">
Once validation verifies that projection is successful and all landmarks established onto the head mesh, it can move onto testing facial animations.
</Alert>
### Test face animations
Now that the validation system knows where to check for the eyes and mouth, the validation checks for facial animations to ensure that the following basic actions are possible:
- Left and right eyes can close
- Mouth can open
- Basic happy and sad expressions
- For a full list of basic action units and poses, see [FACS animations](./head-specifications.md#facs-animation).
The validation looks for the **relative change in the landmarks**. For example, when testing for right eye closing (FACS pose: `RightEyeClosed`), validation checks if the landmarks move from their original neutral state accordingly.
Validation verifies that the right eye can close based off of displacement of landmarks.
</Alert></figcaption>
</figure>
</GridContainer>
## Common issues
Validation checks for several aspects of your head asset. If you are receiving an error related to dynamic head animation, use the following table for potential culprits:
<table><thead>
<tr>
<th>Issue</th>
<th>Potential fixes</th>
</tr></thead>
<tbody>
<tr>
<td>The validation tool is **unable to successfully apply landmarks**.<br/><br/>See [Unable to project landmarks](#unable-to-project-landmarks).</td>
<td>- Verify that the **cage landmark vertices are positioned directly over the corresponding areas of the face**.<br/><br/>- Verify that the **cage is not intersecting with the head mesh**. Landmark projection expects the cage to be over the head mesh.<br/><br/>- **Check for any gaps, holes, or difficult surfaces** of the face where landmarks can fail to project.</td>
</tr>
<tr>
<td>The validation tool is able to apply landmarks, but **can not detect animation**.<br/><br/>See [Animations not displacing landmarks](#animations-not-displacing-landmarks).</td>
<td>- Verify that **landmarks are on the areas of the eyes and mouth that move during animation**.<br/><br/>- Verify that the **cage is not intersecting with the head mesh**. Landmark projection expects the cage to be over the head mesh.<br/><br/>- **If using separate meshes for eyeballs and mouthbags**, ensure that your landmarks are applied to the head mesh, not the eyeballs or mouthbag. This can be achieved by slightly widening the area where your cages project landmarks.</td>
<td>- Your head doesn't include FACS animation. Verify that your head includes FACS poses and mapping. </td>
</tr>
</tbody></table>
### Unable to project landmarks
If validation is unable to apply the projection correctly onto the surface of the head, the validation fails. This often occurs if your **cage extends beyond your head mesh**, or if your head mesh has a **hole or gap** that prevents the application of the landmark. See the following examples:
<figcaption><Alertseverity ="error">Cage **extends too far beyond the mesh** and the validation is unable to apply 3 landmarks to the base mesh.</Alert></figcaption>
Base mesh has a **hollow gap** in the design, preventing validation from applying 3 landmarks to denote the eye area.
</Alert></figcaption>
</figure>
</GridContainer>
<Alertseverity ='success'>
In both cases, adjusting the cage to allow the proper projection of landmarks to the base mesh would resolve this issue.
</Alert>
### Animations not displacing landmarks
In the case where landmarks are correctly applied to the base mesh and the base mesh includes FACS data, it's possible that the facial animations do not displace the landmarks enough to pass validation. See the following example:
<figcaption><Alertseverity ="error">When testing animations, validation doesn't detect the expected change to the landmark regions.</Alert></figcaption>
</figure>
</GridContainer>
<Alertseverity ='success'>
In the example case, adjusting the cage to allow the proper projection of landmarks at the appropriate areas would resolve this issue.
</Alert>
There may also be cases where the landmarks are correct, but the animation itself does not alter the projected landscapes enough to pass validation. In these cases, fixing the animation and/or optimizing the cage could help the validation properly identify the facial animation.
### Animation data missing
Heads require [17 specific FACS poses](./head-specifications.md#facs-animation) that are used to test the 5 basic actions. Regardless of landmarks or other FACS animations, validation immediately fails if the minimum 17 poses were not detected.
For information on how to pose and map dynamic heads, see [Creating basic heads](../characters/facial-animation/create-basic-heads.md).
## Working with non-humanoids
Some character models, typically non-humanoids, have unnatural or missing eyes and mouths. The most common case of this is the classic blocky features.
In this case, the cage still applies the expected landscapes to the head surface, and Roblox validates if facial animations correctly displace the facial animations.
<figcaption>Validation checks the displacement of the landmarks to verify facial animation. <br/><br/>Make sure that your [FACS animations](./head-specifications.md#facs-animation) properly affect the region where landmarks are applied.</figcaption>
</figure>
</GridContainer>
In cases where eyes and mouths might be missing, the validation still projects landmarks and expects facial animation in those areas.
<GridContainernumColumns="3">
<figure>
<imgsrc="../../assets/art/avatar/Horn-Cage.png"/>
<figcaption>Although this character doesn't have eyes or mouth, the cage still attempts to project landmarks for those features.</figcaption>
</figure>
<figure>
<imgsrc="../../assets/art/avatar/Horn-All.png"/>
<figcaption>In this example, the cage landmarks apply to the surface of this eye-less character head.</figcaption>
</figure>
<figure>
<imgsrc="../../assets/art/avatar/Horn-Head.png"/>
<figcaption>Validation checks the displacement of the landmarks to verify facial animation. <br/><br/>Make sure that your [FACS animations](./head-specifications.md#facs-animation) properly affect the regions where the landmarks are applied.</figcaption>
description: All Roblox users are represented by an avatar character which can be customized with body parts, accessories, and clothes from the Marketplace or within experiences.
---
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/2My8jE47clI"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowfullscreen></iframe>
<iframewidth="800"height="450"src="https://www.youtube-nocookie.com/embed/2My8jE47clI"title="YouTube video player"frameborder="0"allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture"allowFullScreen></iframe>
<Typographyvariant='body1'>Environmental art teaches you how to recreate a high-quality environment for a first-person laser tag experience.</Typography>
@ -11,7 +11,7 @@ For latest information on updates and limitations, see the [DevForum Announcemen
**Reimport** allows you to update existing custom models and their textures from an external 3D file. Unlike regular [import](./3d-importer.md#import-files), which creates brand new instances, the reimport function updates existing objects non-destructively to help support the iterative nature of 3D development.
<iframewidth="880"height="495"src="https://www.youtube-nocookie.com/embed/HVUO3Dl7qT0"title="YouTube video player"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe><br/>
<iframewidth="880"height="495"src="https://www.youtube-nocookie.com/embed/HVUO3Dl7qT0"title="YouTube video player"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowFullScreen></iframe><br/>
Along with asset updates, reimport remembers the file and settings used to import the original asset. This means you can easily update an imported asset with a single click or hotkey without going through all the initial import settings. This memory persists across Studio sessions.