update docs

This commit is contained in:
Joe 2026-02-09 21:47:49 -06:00
parent 0b1e8c89dc
commit 7b73720143
586 changed files with 5616 additions and 1325 deletions

View file

@ -3,7 +3,7 @@ title: Caging best practices
description: In-depth description and images of various caging best practices for layered clothing.
---
<iframe width="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>
<iframe width="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.

View file

@ -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):
<iframe width="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>
<iframe width="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>
#### Inner Cage

View file

@ -4,7 +4,7 @@ description: This tutorial covers the basic steps required to publish a custom a
next: /art/accessories/creating-rigid/modeling-setup
---
<iframe width="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>
<iframe width="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).

View file

@ -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:
<iframe width="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>
<iframe width="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.

View file

@ -4,7 +4,7 @@ description: This tutorial covers the basic steps required in Blender to Studio-
next: /art/accessories/creating/modeling-setup
---
<iframe width="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>
<iframe width="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.

View file

@ -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).
<iframe width="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>
<iframe width="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.

View file

@ -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
<video controls width="80%" src="../../../assets/avatar/dynamic-heads/animating-dynamic-heads/videos/2-Face-Controls-Example-Goblin.mp4">
</video>
## Additional resources
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).

View file

@ -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.
<Alert severity = '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).
</Alert>
<table><thead>
<tr>
<th style="text-align: center; vertical-align: middle;"><b>Asset Name</b></th>
<th style="text-align: center;"><b><center>Classic</center></b></th>
<th style="text-align: center;"><b><center>Dynamic</center></b></th>
<th style="text-align: center;"><b>Classic</b></th>
<th style="text-align: center;"><b>Dynamic</b></th>
</tr></thead>
<tbody>
<tr><td>**:3**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/3.png" /></td></tr>
<tr><td>**Angelic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Angelic.png" /></td></tr>
<tr><td>**Bacon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bacon_Face.png" /></td></tr>
<tr><td>**Bandage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bandage.png" /></td></tr>
<tr><td>**Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Beast_Mode.png" /></td></tr>
<tr><td>**Bling**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bling.png" /></td></tr>
<tr><td>**Blue Eyeroll**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Eyeroll.png" /></td></tr>
<tr><td>**Blue Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Galaxy_Gaze.png" /></td></tr>
<tr><td>**Blue Rock Star Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Rock_Star_Smile.png" /></td></tr>
<tr><td>**Camoface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Camoface.png" /></td></tr>
<tr><td>**Cat Eye - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cat_Eye_-_Zara_Larsson.png" /></td></tr>
<tr><td>**Classic Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Vampire.png" /></td></tr>
<tr><td>**Country Morning**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Country_Morning.png" /></td></tr>
<tr><td>**Crimson Laser Vision**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crimson_Laser_Vision.png" /></td></tr>
<tr><td>**Crimson Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crimson_Starface.png" /></td></tr>
<tr><td>**Daring Beard**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Daring_Beard.png" /></td></tr>
<tr><td>**Devil Nas X - Lil Nas X LNX**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Devil_Nas_X_-_Lil_Nas_X_LNX.png" /></td></tr>
<tr><td>**\$.\$**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/dollar-dot-dollar.png" /></td></tr>
<tr><td>**Drooling Noob**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drooling_Noob.png" /></td></tr>
<tr><td>**Emerald Archfey Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Emerald_Archfey_Visage.png" /></td></tr>
<tr><td>**Emerald Laser Vision**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Emerald_Laser_Vision.png" /></td></tr>
<tr><td>**Emperor**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Emperor.png" /></td></tr>
<tr><td>**Finn McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Finn_McCool.png" /></td></tr>
<tr><td>**Friendly Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Grin.png" /></td></tr>
<tr><td>**Golden Bling Braces**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Bling_Braces.png" /></td></tr>
<tr><td>**Golden Lightning Speaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Lightning_Speaker.png" /></td></tr>
<tr><td>**Golden Shiny Teeth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Shiny_Teeth.png" /></td></tr>
<tr><td>**Green Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Amazeface.png" /></td></tr>
<tr><td>**Green Drool Angry Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Drool_Angry_Zombie.png" /></td></tr>
<tr><td>**Green Glowing Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Glowing_Eyes.png" /></td></tr>
<tr><td>**Green Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Ultimate_Dragon_Face.png" /></td></tr>
<tr><td>**Green Whatchoo Talkin Bout**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Whatchoo_Talkin_Bout.png" /></td></tr>
<tr><td>**Its Go Time**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Its_Go_Time.png" /></td></tr>
<tr><td>**Madbot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Madbot_10000.png" /></td></tr>
<tr><td>**Mr Bubbles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mr_Bubbles.png" /></td></tr>
<tr><td>**Optimist**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Optimist.png" /></td></tr>
<tr><td>**Paintball Enthusiast**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Paintball_Enthusiast.png" /></td></tr>
<tr><td>**Pieface Jellyfreckles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pieface_Jellyfreckles.png" /></td></tr>
<tr><td>**Poisonous Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Poisonous_Beast_Mode.png" /></td></tr>
<tr><td>**Prankster**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Prankster.png" /></td></tr>
<tr><td>**Puck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Puck.png" /></td></tr>
<tr><td>**Purple Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Trance.png" /></td></tr>
<tr><td>****Raig Face****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Raig_Face.png" /></td></tr>
<tr><td>****Really Embarrassed****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Really_Embarrassed.png" /></td></tr>
<tr><td>****Red Glowing Eyes****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Glowing_Eyes.png" /></td></tr>
<tr><td>****Red Lip - Tate McRae****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Lip_-_Tate_McRae.png" /></td></tr>
<tr><td>****Rudolph****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rudolph.png" /></td></tr>
<tr><td>****Sad Clown****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sad_Clown.png" /></td></tr>
<tr><td>****Sapphire Laser Vision****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sapphire_Laser_Vision.png" /></td></tr>
<tr><td>****Squiggle Mouth****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Squiggle_Mouth.png" /></td></tr>
<tr><td>****Super Happy Joy****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Super_Happy_Joy.png" /></td></tr>
<tr><td>****Teal Rock Star Smile****</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Teal_Rock_Star_Smile.png" /></td></tr>
<tr><td>**The Dog Whisperer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Dog_Whisperer.png" /></td></tr>
<tr><td>**The First Time I Ever Played ROBLOX**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_First_Time_I_Ever_Played_ROBLOX.png" /></td></tr>
<tr><td>**Torque the Green Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Torque_the_Green_Orc.png" /></td></tr>
<tr><td>**Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Trance.png" /></td></tr>
<tr><td>**Troublemaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Troublemaker.png" /></td></tr>
<tr><td>**\$.\$**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dollar_Dot_Dollar_10831558.png" /></td></tr>
<tr><td>**-_-**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dash_Underscore_Dash_15637848.png" /></td></tr>
<tr><td>**8-Bit Heart Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/8bit_Heart_Face_2568799765.png" /></td></tr>
<tr><td>**:-/**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Dash_Slash_7075469.png" /></td></tr>
<tr><td>**:-[**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Open_Bracket_15470193.png" /></td></tr>
<tr><td>**:-o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Dash_O_7317773.png" /></td></tr>
<tr><td>**:/**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Dash_Backslash_15471035.png" /></td></tr>
<tr><td>**:3**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/3_15432080.png" /></td></tr>
<tr><td>**:]**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hehe_18151826.png" /></td></tr>
<tr><td>**:D**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/D1_16132514.png" /></td></tr>
<tr><td>**:P**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/P_14861743.png" /></td></tr>
<tr><td>**=)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Equal_Close_Parenthesis_14817393.png" /></td></tr>
<tr><td>**&gt;:3**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Three_One_15177601.png" /></td></tr>
<tr><td>**&gt;_&lt;**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Greater_Than_Underscore_Less_Than_15324577.png" /></td></tr>
<tr><td>**^_^**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Caret_Underscore_Caret_15366173.png" /></td></tr>
<tr><td>**Adorable Puppy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Adorable_Puppy_11389372.png" /></td></tr>
<tr><td>**Alien**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Alien_31317701.png" /></td></tr>
<tr><td>**Alien Ambassador**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Alien_Ambassador_11913700.png" /></td></tr>
<tr><td>**Alright**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Alright_7131541.png" /></td></tr>
<tr><td>**Amelia Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Amelia_Face_293302465.png" /></td></tr>
<tr><td>**And then we&#x27;ll take over the world!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/And_Then_Well_Take_Over_The_World_12732366.png" /></td></tr>
<tr><td>**Angry Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Angry_Zombie_173789114.png" /></td></tr>
<tr><td>**Anguished**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Anguished_8560975.png" /></td></tr>
<tr><td>**Anime Surprise**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Anime_Surprise_416846300.png" /></td></tr>
<tr><td>**Award-Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Award_Winning_Smile_6531983163.png" /></td></tr>
<tr><td>**Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awesome_Face_30394850.png" /></td></tr>
<tr><td>**Awkward Eyeroll**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awkward_Eyeroll_150182378.png" /></td></tr>
<tr><td>**Awkward Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awkward_Grin_150182501.png" /></td></tr>
<tr><td>**Awkward....**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awkward_23932048.png" /></td></tr>
<tr><td>**Bad Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bad_Dog_10678423.png" /></td></tr>
<tr><td>**Beaming with Pride**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Beaming_With_Pride_3267567501.png" /></td></tr>
<tr><td>**Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Beast_Mode_128992838.png" /></td></tr>
<tr><td>**Big Grin - Tai Verdes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Big_Grin_Tai_Verdes_7987180607.png" /></td></tr>
<tr><td>**Big Sad Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Big_Sad_Eyes_391496223.png" /></td></tr>
<tr><td>**BiteyMcFace**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Biteymcface_743690770.png" /></td></tr>
<tr><td>**Blerg!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blerg_12777646.png" /></td></tr>
<tr><td>**Blinky**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blinky_7506135.png" /></td></tr>
<tr><td>**Blizzard Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blizzard_Beast_Mode_209995252.png" /></td></tr>
<tr><td>**Blue Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Amazeface_835095003.png" /></td></tr>
<tr><td>**Blue Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Bubble_Trouble_330296924.png" /></td></tr>
<tr><td>**Blue Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Goof_1191162013.png" /></td></tr>
<tr><td>**Blue Rock Star Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Rock_Star_Smile_1428409936.png" /></td></tr>
<tr><td>**Blue Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Starface_119812715.png" /></td></tr>
<tr><td>**Blue Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Starry_Sight_2222775067.png" /></td></tr>
<tr><td>**Blue Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Ultimate_Dragon_Face_1772529256.png" /></td></tr>
<tr><td>**Bluffing**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bluffing_147144673.png" /></td></tr>
<tr><td>**Bombo Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bombo_Face_121947053.png" /></td></tr>
<tr><td>**Bored**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bored_66330106.png" /></td></tr>
<tr><td>**Braces**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Braces_30394484.png" /></td></tr>
<tr><td>**Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bubble_Trouble_19264845.png" /></td></tr>
<tr><td>**Butterfly Wink - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Butterfly_Wink_Lil_Nas_XLNX_7657646351.png" /></td></tr>
<tr><td>**Cat Eye - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cat_Eye_Zara_Larsson_7893455671.png" /></td></tr>
<tr><td>**Check It**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Check_It_7074786.png" /></td></tr>
<tr><td>**Cheerful Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cheerful_Grin_33321848.png" /></td></tr>
<tr><td>**Cheerful Hello**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cheerful_Hello_362051644.png" /></td></tr>
<tr><td>**Chill**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Chill_7074764.png" /></td></tr>
<tr><td>**Chill McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Chill_Mccool_376813144.png" /></td></tr>
<tr><td>**Chubs**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Chubs_7076110.png" /></td></tr>
<tr><td>**City Life Man - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/City_Life_Man_Face_2490662812.png" /></td></tr>
<tr><td>**City Life Woman - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/City_Life_Woman_Face_2492678267.png" /></td></tr>
<tr><td>**Claire&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Claires_Face_301827089.png" /></td></tr>
<tr><td>**Classic Alien Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Alien_Face_159199178.png" /></td></tr>
<tr><td>**Classic Female - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Female_Face_4018627046.png" /></td></tr>
<tr><td>**Classic Female v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Female_V2_Face_4637266368.png" /></td></tr>
<tr><td>**Classic Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Goof_7074661.png" /></td></tr>
<tr><td>**Classic Male - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Male_Face_4018617474.png" /></td></tr>
<tr><td>**Classic Male v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Male_V2_Face_4637244809.png" /></td></tr>
<tr><td>**Classic Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Vampire_7074836.png" /></td></tr>
<tr><td>**Commando**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Commando_10527010.png" /></td></tr>
<tr><td>**Concerned**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Concerned_9250660.png" /></td></tr>
<tr><td>**Crazy Happy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crazy_Happy_45515121.png" /></td></tr>
<tr><td>**Crazybot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crazybot10000_554650579.png" /></td></tr>
<tr><td>**Crimson Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crimson_Evil_Eye_1016184756.png" /></td></tr>
<tr><td>**Cuckookrazybot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cuckookrazybot10000_554663025.png" /></td></tr>
<tr><td>**Cute Kitty**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cute_Kitty_11389441.png" /></td></tr>
<tr><td>**Cutiemouse**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cutiemouse_15885121.png" /></td></tr>
<tr><td>**D:**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/D_14812981.png" /></td></tr>
<tr><td>**D=**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dequal_17138027.png" /></td></tr>
<tr><td>**Daring**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Daring_8329690.png" /></td></tr>
<tr><td>**Daring Beard**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Daring_Beard_110288809.png" /></td></tr>
<tr><td>**Demented Mouse**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Demented_Mouse_12188176.png" /></td></tr>
<tr><td>**Desert Commando**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Desert_Commando_323191683.png" /></td></tr>
<tr><td>**Devil Nas X - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Devil_Nas_X_Lil_Nas_XLNX_7657657626.png" /></td></tr>
<tr><td>**Devilish Smile - 24kGoldn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Devilish_Smile24k_Goldn_9156271739.png" /></td></tr>
<tr><td>**Dex&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dexs_Face_807335973.png" /></td></tr>
<tr><td>**Diamond Grill - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Diamond_Grill_Lil_Nas_XLNX_7657627637.png" /></td></tr>
<tr><td>**Disbelief**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Disbelief_20337343.png" /></td></tr>
<tr><td>**Dizzy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dizzy_Face_10907551.png" /></td></tr>
<tr><td>**Downcast**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Downcast_21352013.png" /></td></tr>
<tr><td>**Drill Sergeant**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drill_Sergeant_141728899.png" /></td></tr>
<tr><td>**Drool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drool_7074893.png" /></td></tr>
<tr><td>**Drooling Noob**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drooling_Noob_24067718.png" /></td></tr>
<tr><td>**Emerald Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Emerald_Evil_Eye_1016185535.png" /></td></tr>
<tr><td>**Err...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Err_20418658.png" /></td></tr>
<tr><td>**Exclamation Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Exclamation_Face_35168581.png" /></td></tr>
<tr><td>**eXtreme**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Extreme_10831454.png" /></td></tr>
<tr><td>**Eyes of Everflame**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Eyes_Of_Everflame_362051773.png" /></td></tr>
<tr><td>**Eyes of Everfrost**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Eyes_Of_Everfrost_22972723.png" /></td></tr>
<tr><td>**Fang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Fang_7075142.png" /></td></tr>
<tr><td>**Fast Car**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Fast_Car_22587894.png" /></td></tr>
<tr><td>**Fearless**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Fearless_7074991.png" /></td></tr>
<tr><td>**Finn McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Finn_Mc_Cool_10907549.png" /></td></tr>
<tr><td>**Freckles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Freckles_12145366.png" /></td></tr>
<tr><td>**Friendly Cyclops**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Cyclops_30394438.png" /></td></tr>
<tr><td>**Friendly Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Grin_25321961.png" /></td></tr>
<tr><td>**Friendly Pirate**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Pirate_19366445.png" /></td></tr>
<tr><td>**Friendly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Smile_616381207.png" /></td></tr>
<tr><td>**Ghostface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Ghostface_12467159.png" /></td></tr>
<tr><td>**Gigglypuff**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Gigglypuff_35397243.png" /></td></tr>
<tr><td>**Glee**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Glee_7074729.png" /></td></tr>
<tr><td>**Glittering Eye - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Glittering_Eye_Zara_Larsson_7893460486.png" /></td></tr>
<tr><td>**Glory on the Gridiron**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Glory_On_The_Gridiron_21802396.png" /></td></tr>
<tr><td>**Gold Mermaid Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Gold_Mermaid_Visage_5122245866.png" /></td></tr>
<tr><td>**Golden Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Evil_Eye_1016185809.png" /></td></tr>
<tr><td>**Golden Eyes - 24kGoldn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Eyes24k_Goldn_9156275069.png" /></td></tr>
<tr><td>**Golden Shiny Teeth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Shiny_Teeth_66319941.png" /></td></tr>
<tr><td>**Good Intentioned**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Good_Intentioned_7317793.png" /></td></tr>
<tr><td>**Goofball**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Goofball_27134344.png" /></td></tr>
<tr><td>**Green Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Amazeface_835094544.png" /></td></tr>
<tr><td>**Green Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Bubble_Trouble_380754227.png" /></td></tr>
<tr><td>**Green Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Goof_1191162539.png" /></td></tr>
<tr><td>**Green Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Starface_119812738.png" /></td></tr>
<tr><td>**Green Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Starry_Sight_2222774106.png" /></td></tr>
<tr><td>**Green Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Trance_260303894.png" /></td></tr>
<tr><td>**Green Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Ultimate_Dragon_Face_1772531407.png" /></td></tr>
<tr><td>**Green Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Wistful_Wink_583722932.png" /></td></tr>
<tr><td>**Green-eyed Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Greeneyed_Awesome_Face_66330144.png" /></td></tr>
<tr><td>**Gritty Bombo**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Gritty_Bombo_406000562.png" /></td></tr>
<tr><td>**Grr!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Grr_19398554.png" /></td></tr>
<tr><td>**Happy :D**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Happy_D_406000730.png" /></td></tr>
<tr><td>**Happy Girl Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Happy_Girl_Face_293226229.png" /></td></tr>
<tr><td>**Happy Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Happy_Wink_236399287.png" /></td></tr>
<tr><td>**Heeeeeey...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Heeeeeey_21635565.png" /></td></tr>
<tr><td>**Hilarious**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hilarious_27861352.png" /></td></tr>
<tr><td>**Hmmm...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hmmm_7076076.png" /></td></tr>
<tr><td>**Hold It In**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hold_It_In_2222771916.png" /></td></tr>
<tr><td>**Huh?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Huh_150182466.png" /></td></tr>
<tr><td>**Hut Hut Hike!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hut_Hut_Hike_15470849.png" /></td></tr>
<tr><td>**Hypnoface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hypnoface_10770436.png" /></td></tr>
<tr><td>**I &lt;3 New Site Theme**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I3_New_Site_Theme_32723404.png" /></td></tr>
<tr><td>**I Am Not Amused**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Am_Not_Amused_7131886.png" /></td></tr>
<tr><td>**I Didn&#x27;t Eat That Cookie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Didnt_Eat_That_Cookie_116042990.png" /></td></tr>
<tr><td>**I Hate Noobs**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Hate_Noobs_14030577.png" /></td></tr>
<tr><td>**I wuv u**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Wuv_U_10907545.png" /></td></tr>
<tr><td>**It&#x27;s Go Time!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Its_Go_Time_7506141.png" /></td></tr>
<tr><td>**Jack Frost Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Jack_Frost_Face_19396123.png" /></td></tr>
<tr><td>**Joyful Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Joyful_Smile_209995366.png" /></td></tr>
<tr><td>**Joyous Surprise**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Joyous_Surprise_28999228.png" /></td></tr>
<tr><td>**Just Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Just_Trouble_244160766.png" /></td></tr>
<tr><td>**Know-It-All Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Knowitall_Grin_26424808.png" /></td></tr>
<tr><td>**Krezak - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Krezak_Face_293309580.png" /></td></tr>
<tr><td>**Lady Lashes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lady_Lashes_29348122.png" /></td></tr>
<tr><td>**Laughing Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Laughing_Fun_226217449.png" /></td></tr>
<tr><td>**Lavender Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lavender_Amazeface_835095306.png" /></td></tr>
<tr><td>**Lazy Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lazy_Eye_7075502.png" /></td></tr>
<tr><td>**Lightning Speaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lightning_Speaker_22588801.png" /></td></tr>
<tr><td>**Lin&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lins_Face_301826803.png" /></td></tr>
<tr><td>**Look At My Nose**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Look_At_My_Nose_23311761.png" /></td></tr>
<tr><td>**Love**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/love_11611321.png" /></td></tr>
<tr><td>**Manicbot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Manicbot10000_554663566.png" /></td></tr>
<tr><td>**Manlier Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Manlier_Face_76383151.png" /></td></tr>
<tr><td>**McLaren Big Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mclaren_Big_Grin_9062637857.png" /></td></tr>
<tr><td>**Meanie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Meanie_9250643.png" /></td></tr>
<tr><td>**Meow?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Meow_10907529.png" /></td></tr>
<tr><td>**Monarch Butterfly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Monarch_Butterfly_Smile_383607653.png" /></td></tr>
<tr><td>**Monster Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Monster_Face_49045351.png" /></td></tr>
<tr><td>**Monster Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Monster_Smile_398675917.png" /></td></tr>
<tr><td>**Mr. Toilet - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mr_Toilet_Face_4416933495.png" /></td></tr>
<tr><td>**Mysterious**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mysterious_7132035.png" /></td></tr>
<tr><td>**Neoclassic Male v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Neoclassic_Malev2_Face_4637291815.png" /></td></tr>
<tr><td>**Nervous**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nervous_23219981.png" /></td></tr>
<tr><td>**NetHack Addict**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nethack_Addict_16357383.png" /></td></tr>
<tr><td>**Not sure if...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Notsureif_173789324.png" /></td></tr>
<tr><td>**Nouveau George**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nouveau_George_398675764.png" /></td></tr>
<tr><td>**O.o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Oo1_7074595.png" /></td></tr>
<tr><td>**O_o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Oo_66330265.png" /></td></tr>
<tr><td>**Obvious Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Obvious_Wink_51241537.png" /></td></tr>
<tr><td>**Oh Deer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Oh_Deer_12145328.png" /></td></tr>
<tr><td>**Old Timer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Old_Timer_27003636.png" /></td></tr>
<tr><td>**Orange Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Orange_Starface_162200666.png" /></td></tr>
<tr><td>**Overjoyed Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Overjoyed_Smile_1428416217.png" /></td></tr>
<tr><td>**Pink Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Galaxy_Gaze_440738448.png" /></td></tr>
<tr><td>**Pink Mermaid Princess**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Mermaid_Princess_1428418448.png" /></td></tr>
<tr><td>**Pink Shades McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Shades_Mccool_323192138.png" /></td></tr>
<tr><td>**Pink Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Wistful_Wink_583721990.png" /></td></tr>
<tr><td>**Poisonous Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Poisonous_Beast_Mode_2606177838.png" /></td></tr>
<tr><td>**Prideful Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Prideful_Smile_3267564334.png" /></td></tr>
<tr><td>**Puck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Puck_20298988.png" /></td></tr>
<tr><td>**Pumpkin Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pumpkin_Face_313549781_313549781.png" /></td></tr>
<tr><td>**Punk Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Punk_Face_119812659.png" /></td></tr>
<tr><td>**Purple Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Bubble_Trouble_362051999.png" /></td></tr>
<tr><td>**Purple Butterfly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Butterfly_Smile_238983270.png" /></td></tr>
<tr><td>**Purple Mermaid Princess**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Mermaid_Princess_1428424821.png" /></td></tr>
<tr><td>**Purple Moonstruck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Moonstruck_878942257.png" /></td></tr>
<tr><td>**Purple Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Wistful_Wink_583722710.png" /></td></tr>
<tr><td>**Pwnda Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pwnda_Face_28281786.png" /></td></tr>
<tr><td>**Radioactive Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Radioactive_Beast_Mode_2225761296.png" /></td></tr>
<tr><td>**Raig Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Raig_Face_209994783.png" /></td></tr>
<tr><td>**RAWR!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rawr_7076224.png" /></td></tr>
<tr><td>**Red Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Goof_1191125008.png" /></td></tr>
<tr><td>**Red Lip - Tate McRae**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Lip_Tate_Mc_Rae_9650713776.png" /></td></tr>
<tr><td>**Red Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Ultimate_Dragon_Face_1772530315.png" /></td></tr>
<tr><td>**Red White and Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_White_And_Starface_445117183.png" /></td></tr>
<tr><td>**Retro Smiley**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Retro_Smiley_10770432.png" /></td></tr>
<tr><td>**ROAR!!!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ROAR_406001167.png" /></td></tr>
<tr><td>**Robot Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Robot_Smile_30265169.png" /></td></tr>
<tr><td>**Rodeo Vampire - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rodeo_Vampire_Lil_Nas_Xlnx_5917448278.png" /></td></tr>
<tr><td>**Rogueish Good Looks**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rogueish_Good_Looks_1665511048.png" /></td></tr>
<tr><td>**Rose Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rose_Amazeface_835095880.png" /></td></tr>
<tr><td>**Ruby Archfey Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Ruby_Archfey_Visage_2830505884.png" /></td></tr>
<tr><td>**Sad**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sad_7699177.png" /></td></tr>
<tr><td>**Sadfaic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sadfaic_117522793.png" /></td></tr>
<tr><td>**Sapphire Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sapphire_Evil_Eye_1016184964.png" /></td></tr>
<tr><td>**Scarecrow**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Scarecrow_26260927.png" /></td></tr>
<tr><td>**Scarecrow Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Scarecrow_Face_14721869.png" /></td></tr>
<tr><td>**Secret Service**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Secret_Service_20612949.png" /></td></tr>
<tr><td>**Semi Colon Open Paren**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Semi_Colon_Open_Paren_16179646.png" /></td></tr>
<tr><td>**Serena’s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Serenas_Face_301826957.png" /></td></tr>
<tr><td>**Serious Scar Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Serious_Scar_Face_255827175.png" /></td></tr>
<tr><td>**Sharpnine&#x27;s Face of Disappointment**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sharpnines_Face_Of_Disappointment_209994270.png" /></td></tr>
<tr><td>**Shocked**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Shocked_147144644.png" /></td></tr>
<tr><td>**Sick Day**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sick_Day_26619096.png" /></td></tr>
<tr><td>**Sigmund**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sigmund_21311601.png" /></td></tr>
<tr><td>**Silence**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Silence_10860397.png" /></td></tr>
<tr><td>**Silly Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Silly_Fun_7699174.png" /></td></tr>
<tr><td>**Silver Punk Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Silver_Punk_Face_387256603.png" /></td></tr>
<tr><td>**Singing**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Singing_66330310.png" /></td></tr>
<tr><td>**Sinister**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sinister_8329686.png" /></td></tr>
<tr><td>**Slickfang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Slickfang_7317765.png" /></td></tr>
<tr><td>**Slithering Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Slithering_Smile_2830646491.png" /></td></tr>
<tr><td>**Sly Guy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sly_Guy_Face_238983378.png" /></td></tr>
<tr><td>**Smil Nas X - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smil_Nas_X_Lil_Nas_XLNX_5917459717.png" /></td></tr>
<tr><td>**Smiling Girl**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smiling_Girl_209994875.png" /></td></tr>
<tr><td>**Smith McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smith_Mccool_27412825.png" /></td></tr>
<tr><td>**Smug**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smug_406001308.png" /></td></tr>
<tr><td>**Sneaky Steve**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sneaky_Steve_823012694.png" /></td></tr>
<tr><td>**Sniffles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sniffles_14516578.png" /></td></tr>
<tr><td>**So Funny**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/So_Funny_32058239.png" /></td></tr>
<tr><td>**So Super Excited - Blue**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/So_Super_Excited_Blue_2569001052.png" /></td></tr>
<tr><td>**So Super Excited - Pink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/So_Super_Excited_Pink_2568801198.png" /></td></tr>
<tr><td>**Sparkle Time Sparkle Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sparkle_Time_Sparkle_Eyes_2620507161.png" /></td></tr>
<tr><td>**Spring Bunny**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Spring_Bunny_110207437.png" /></td></tr>
<tr><td>**Square Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Square_Eyes_22119034.png" /></td></tr>
<tr><td>**Squiggle Mouth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Squiggle_Mouth_25166274.png" /></td></tr>
<tr><td>**Squinty Assassin Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Squinty_Assassin_Face_880474146.png" /></td></tr>
<tr><td>**Stare**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Stare_8560971.png" /></td></tr>
<tr><td>**Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Starface_32873408.png" /></td></tr>
<tr><td>**Stink Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Stink_Eye_416846143.png" /></td></tr>
<tr><td>**Stitchface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Stitchface_8329679.png" /></td></tr>
<tr><td>**Sunny Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sunny_Fun_51241171.png" /></td></tr>
<tr><td>**Sunrise Eyes - Tai Verdes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sunrise_Eyes_Tai_Verdes_7987201392.png" /></td></tr>
<tr><td>**Super Happy Joy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Super_Happy_Joy_280988698.png" /></td></tr>
<tr><td>**Suspicious**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Suspicious_209994929.png" /></td></tr>
<tr><td>**Sweat It Out**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sweat_It_Out_20909103.png" /></td></tr>
<tr><td>**Tango**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tango_16101765.png" /></td></tr>
<tr><td>**The Big Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Big_Dog_10860384.png" /></td></tr>
<tr><td>**The Friendly Eviscerator**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Friendly_Eviscerator_22500129.png" /></td></tr>
<tr><td>**The Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Winning_Smile_616380929.png" /></td></tr>
<tr><td>**Thinking**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Thinking_29716262.png" /></td></tr>
<tr><td>**Tiger Chase Fear Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tiger_Chase_Fear_Face_258198928.png" /></td></tr>
<tr><td>**Tired Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tired_Face_141728790.png" /></td></tr>
<tr><td>**Tohru: The Phantom Claw&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tohru_The_Phantom_Claws_Face_1384270693.png" /></td></tr>
<tr><td>**Too Much Candy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Too_Much_Candy_295763789.png" /></td></tr>
<tr><td>**Toothless**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Toothless_19399752.png" /></td></tr>
<tr><td>**Toothy Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Toothy_Grin_7075434.png" /></td></tr>
<tr><td>**Torque the Blue Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Torque_The_Blue_Orc_2830496106.png" /></td></tr>
<tr><td>**Torque the Green Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Torque_The_Green_Orc_2830497827.png" /></td></tr>
<tr><td>**Uh Oh**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Uh_Oh_7074944.png" /></td></tr>
<tr><td>**Up To Something**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Up_To_Something_1016186364.png" /></td></tr>
<tr><td>**Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Vampire_29532363.png" /></td></tr>
<tr><td>**Vans Checkerboard Blue Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Vans_Checkerboard_Blue_Eyes_8247356154.png" /></td></tr>
<tr><td>**Violet Fang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Violet_Fang_362051899.png" /></td></tr>
<tr><td>**Violet Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Violet_Starry_Sight_2222775930.png" /></td></tr>
<tr><td>**Visual Studio Seized Up For 45 Seconds... Again**</td><td colspan="2"><img src="../../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><td colspan="2"><img src="../../assets/art/avatar/classic-head/Walk_The_Plank_You_Scurvy_Dogs_13478124.png" /></td></tr>
<tr><td>**WHAAAaaa!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Whaaaaaa_14127194.png" /></td></tr>
<tr><td>**Whistle**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Whistle_22877700.png" /></td></tr>
<tr><td>**Wink-Blink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winkblink_22828351.png" /></td></tr>
<tr><td>**Winky**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winky_7074864.png" /></td></tr>
<tr><td>**Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winning_Smile_880469676.png" /></td></tr>
<tr><td>**Woman Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Woman_Face_86487766.png" /></td></tr>
<tr><td>**Wonder Woman&#x27;s Golden Armor - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Wonder_Womans_Golden_Armor_Face_6029816756.png" /></td></tr>
<tr><td>**XD**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xd_15054426.png" /></td></tr>
<tr><td>**XD 2.0**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xd20_406001052.png" /></td></tr>
<tr><td>**Xtreme Happy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xtreme_Happy_20644021.png" /></td></tr>
<tr><td>**YAAAWWN.**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yaaawwn_162068415.png" /></td></tr>
<tr><td>**Yawn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yawn_20010377.png" /></td></tr>
<tr><td>**Yellow Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yellow_Starface_162200696.png" /></td></tr>
<tr><td>**You ated my caik!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/You_Ated_My_Caik_21635583.png" /></td></tr>
<tr><td>**Zoey Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Zoey_Face_807339121.png" /></td></tr>
<tr><td>**Zombie Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Zombie_Face_133360789.png" /></td></tr>
<tr><td>**¬_¬**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Negation_Underscore_Negation_13038375.png" /></td></tr>
<tr><td>**¬_¬ 2.0**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/20_406000958.png" /></td></tr>
</tbody></table>

View file

@ -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.
<Alert severity = '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.
## Auto-setup recommendation
<Alert severity = "info" variant="outlined" color="primary" >
<AlertTitle>Auto-setup recommendation</AlertTitle>
<br />
[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
<Alert severity = '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>
<Alert severity = '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).
<center><img src="../../assets/art/avatar/Mouth-Vertices-Warning.png"/></center>
</Alert>
## FACS animation
@ -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.
<table>
<thead>

View file

@ -0,0 +1,218 @@
---
title: Head validation
description: In-depth details on how Roblox validates head assets
---
<Alert severity = '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).
<Alert severity = 'warning'>
Validation also checks for other issues, such as poor caging or missing required FACS poses. For more information, see [common issues](#common-issues).
</Alert>
<Alert severity = "info" variant="outlined" color="primary" >
<AlertTitle>Auto-setup recommendation</AlertTitle>
<br />
[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.
<GridContainer numColumns="2">
<figure>
<img src="../../assets/art/avatar/Cage-With-Landmarks.png"/>
<figcaption>Cage mesh: Specific vertices of the cage mark eyes and mouth.</figcaption>
</figure>
<figure>
<img src="../../assets/art/avatar/Projection-Side.png"/>
<figcaption>Roblox validation projects these points onto the head mesh.</figcaption>
</figure>
</GridContainer>
<center><figure>
<img src="../../assets/art/avatar/Face-Landmarks.png" width = "60%"/>
<figcaption><center>Head mesh: All landmarks projected from cage mesh to head mesh.</center></figcaption>
</figure>
</center>
<Alert severity = "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.
<GridContainer numColumns="2">
<figure>
<img src="../../assets/art/avatar/Face-Landmarks.png"/>
<figcaption><Alert severity = "success">Face mesh with all projected landmarks applied from cage.</Alert></figcaption>
</figure>
<figure>
<img src="../../assets/art/avatar/Eye-Closed-Success.png"/>
<figcaption><Alert severity = "success">
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>
</tr>
<tr>
<td>The validation tool doesn't detect [FACS animations](#animation-data-missing).</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:
<GridContainer numColumns="2">
<figure>
<img src="../../assets/art/avatar/Missing-Landmarks-A.png"/>
<figcaption><Alert severity = "error">Cage **extends too far beyond the mesh** and the validation is unable to apply 3 landmarks to the base mesh.</Alert></figcaption>
</figure>
<figure>
<img src="../../assets/art/avatar/Missing-Landmarks-B.png"/>
<figcaption><Alert severity = "error">
Base mesh has a **hollow gap** in the design, preventing validation from applying 3 landmarks to denote the eye area.
</Alert></figcaption>
</figure>
</GridContainer>
<Alert severity = '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:
<GridContainer numColumns="2">
<figure>
<img src="../../assets/art/avatar/Face-Landmarks-Poor.png" />
<figcaption><Alert severity ='warning'>Landmarks successfully established on base mesh, but are not near the expected regions.</Alert></figcaption>
</figure>
<figure>
<img src="../../assets/art/avatar/Landmarks-Fail-B.png"/>
<figcaption><Alert severity = "error">When testing animations, validation doesn't detect the expected change to the landmark regions.</Alert></figcaption>
</figure>
</GridContainer>
<Alert severity = '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.
<GridContainer numColumns="3">
<figure>
<img src="../../assets/art/avatar/Blocky-Cage.png"/>
<figcaption>The cage for a blocky character applies landmarks to the surface of the head.</figcaption>
</figure>
<figure>
<img src="../../assets/art/avatar/Blocky-All.png"/>
<figcaption>Ensure that the landmarks are applied in areas where animation can effectively move the landmarks.</figcaption>
</figure>
<figure>
<img src="../../assets/art/avatar/Blocky-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 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.
<GridContainer numColumns="3">
<figure>
<img src="../../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>
<img src="../../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>
<img src="../../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>
</figure>
</GridContainer>

View file

@ -3,7 +3,7 @@ title: Avatar characters
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.
---
<iframe width="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>
<iframe width="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>
<br /><br />

View file

@ -48,7 +48,7 @@ Whether you're just getting started with Roblox or need a quick refresher, use t
<div class="container"
style={{position: "relative", paddingBottom: "56.25%", height: 0}}>
<iframe src="https://www.youtube-nocookie.com/embed/EUDSIUmLjxA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
<iframe src="https://www.youtube-nocookie.com/embed/EUDSIUmLjxA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
</div>
<Typography variant='h4'>Create avatar items</Typography>
<Typography variant='body1' >Create accessories, clothing, and bodies that you can sell on the Marketplace.</Typography>
@ -74,7 +74,7 @@ that teaches you the skills you need to create and monetize your experiences.
<div class="container"
style={{position: "relative", paddingBottom: "56.25%", height: 0}}>
<iframe src="https://www.youtube-nocookie.com/embed/nwShvDmFHWc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
<iframe src="https://www.youtube-nocookie.com/embed/nwShvDmFHWc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
</div>
<Typography variant='h4'>Environmental art</Typography>
<Typography variant='body1' >Environmental art teaches you how to recreate a high-quality environment for a first-person laser tag experience.</Typography>
@ -93,7 +93,7 @@ style={{position: "relative", paddingBottom: "56.25%", height: 0}}>
<div class="container"
style={{position: "relative", paddingBottom: "56.25%", height: 0}}>
<iframe src="https://www.youtube-nocookie.com/embed/tzPn6QvU8Bo" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
<iframe src="https://www.youtube-nocookie.com/embed/tzPn6QvU8Bo" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
</div>
<Typography variant='h4'>Avatar item tutorials</Typography>
<Typography variant='body1' >Check out our tutorials on creating your own Avatar items ready for the Marketplace.</Typography>
@ -166,7 +166,7 @@ style={{marginRight:8, alignSelf: 'flex-start'}}>Learn more</Button>
<div class="container"
style={{position: "relative", paddingBottom: "56.25%", height: 0}}>
<iframe src="https://www.youtube-nocookie.com/embed/V-SDTfxcIF8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
<iframe src="https://www.youtube-nocookie.com/embed/V-SDTfxcIF8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen style={{position: "absolute", top: 0, left: 0, width: "100%", height: "100%"}}></iframe>
</div>
<Typography variant='h4'>Custom skyboxes 101</Typography>

View file

@ -379,7 +379,7 @@ You can use the **&ctdot;** menu next to the Presets dropdown for additional opt
## Warnings and errors
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/UEHEsmCslBU" title="YouTube video player" frameborder="0" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/UEHEsmCslBU" title="YouTube video player" frameborder="0" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen></iframe>
<br />
If Studio detects any issues with your model, a small indicator displays in the hierarchy panel or the settings panel.

View file

@ -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.
<iframe width="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 />
<iframe width="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.

View file

@ -124,7 +124,7 @@ export const sections = [
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen
allowFullScreen
></iframe>
)}
</Grid>

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fb022feeee06dcaabfd345fa0af209f8870928c0814b598509350645da0bea41
size 464798

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8722390fd278acaf06425785e5fa05d569bcc76242569c27b74de541aa0529fa
size 375811

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:87e5b874503766793ece7e6bfda827deb331a66e0bcca6a06a796758fbcc133e
size 315364

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ef74b51fecdd458218d8f6ec012e3bc1bdab6cd71df454ba1a62781cf0f1ec39
size 162093

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3a63f680331a7b20092f8f9ae7b5ce76d09e5d39b5c1e6bd6466bee5cf2b9532
size 156644

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:00a0091d934c1e53c9b836ec64ceafa08c47fb22d6091499b3ba66926955b430
size 642539

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:666a7ff0fd1c8d97ca0dfd7acbee4c814118064c9944ace14671891aba76204a
size 259622

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c34236bc359db35c9d13a686a2fbcd8d013ba20af1ce22a774b482f8fe756d1c
size 162596

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d9e11f29a4e5ffadc64ea2ba623217f364b1b20f9f5034094e8b36fb1d9d5333
size 193902

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:97fffa11b42454c531c4ad8913b9e6d36bf804b3059395596822be1edcd098c6
size 278004

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:17fe359fcd30a86aedd67e1043437b2692336a50d1833896af6852c16934db24
size 280432

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0f50c7e2968792f3012bde4b00b882080c4201f6d0ff50808a26509ae1ea412c
size 280497

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7856e7a72cc749a684ad8bdb76a9e4780b9aedb349f960341cf57ee05a1f7979
size 140092

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e49f90344a036c4f70b7e2b72b328d6e2e030654f5e66a15e096d481b21a8266
size 110549

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ecb5d242163ea58767bd08a3d37bc747e1435ab01f5c8860515344561806a3a2
size 63702

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:32b66a226ab23b8fd68b995039f63474042deda3c97ea86c7b5f3908cc12cb77
size 282867

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:64aa7237f46563b60f7f613d3698a95c24fe4a11928913a51551cbc1491834e8
size 201370

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:43e87f3e48cdc1f1fdbad15c58b23aff2edb4ed7c3980812658d6218da1972a1
size 219156

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fee21615299541dabce94ecd36395a525d78bd21abf1c264e3633c1e53a5d5aa
size 241801

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:65dd75a3afe11df7eb126736bc4303d12c09c15aea05b28cb1d979a1ca884621
size 102567

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:017b78c42becdf1e094e4f2b264b6c9091e9c68602944d40b6b287a1ccb7c7da
size 173273

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e15538acb4fe2bdab9818152b00e5489213d4c8da549c65c7a0e7effa54aca56
size 36286

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7a7e13d08352eea7bc4dd3a8d91be4eab5198a040dfeb28ad7b8f5a36117aca2
size 80854

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:79b980f6daa0a82408c9a5e840215e342bd4d80ac6c484d89e802514a117e100
size 50093

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dc255008da4cdb8fbda00a05a6492c361b668875c6ef183724c0a40d8f0070be
size 54306

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c96e778ef21e786b4246af38d51d7235c08f858be1c09ae7a372491ebc769ad8
size 54567

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a9bb83af002a298c856f9c4b48ed211bb96c7bdbc834402a9c5cf8ea459b16b8
size 47316

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:13111576730b9ea431a7eb0b27b6a8b51ccf999701151e8a5698d1f2f16d959e
size 49924

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b32d2037813551bf199ed0711fbc2d0305e3fa296a0544e1a265bcc70f16fd27
size 57930

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:83fe874cf88414282e63135000b7499e5dac8fdf6cb5badaf2ef9a51cdb23e39
size 62894

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6ae4db14ba11dcedec5992825f78c67f40fcedff2b39fb9638c42fcc1875285c
size 51437

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bfd51e5cd9c278106546ab33089548dee20862cdaf2a65d4e0db3ad553b1a95e
size 86199

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:396ebf835e937b8f9ecc8e42f297e1cca5404dcdb9965a4eea7b9d12745dcecd
size 63164

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b449d96482d364509e3e5a1ca615dab42e7c8e88c6b01a888619aa9044732eda
size 56226

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:84ca49a5b7610e939f2289ca5fa7317ad3b58b25b7a1fe4e77d3335c26b5aae3
size 65443

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e98c0c1f9dcdb71e9f3ee82e2fe018c0122e8659f1df8260ea30d13d69548a0
size 79636

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:14ad7dce8575adb963d4962b49bc22048e9657e796eaa424cec49e3241661724
size 60986

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b1600c402e1df6716a502a3a095aa3c9ed4faa5423c6f02b77eae1c32ca817f1
size 56324

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8216b81a372a1a9e5f80ec1a93bd5ecd5de3dcc15f9ffdc350d8400d7588774b
size 51328

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:81bca79374de004430e19fc1c2d51f626d9f235754c24dd77b34a2d1f220eddd
size 60315

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cdf9d8719a81005189b7ffa7b4b60b8a7849a453f9c52c5de0e155086382619d
size 98942

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:18ffea32e8ae232e0d2237f1d53a96f1a975172e4cffc3cf5a1896baf6f8ceb2
size 57386

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c2dd086a35d84230337e29901cd78d9f2d1be9063bde44a862bf27a65c53cf33
size 96012

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:91591f87d0e7f27d8f97364db23ece7cae762437cdf97bff78c986a4fef54cfd
size 105609

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:26a6b814dcb52bca3147c8b52f0e475c6de67d9d19fd18e3e7e7c9ae2c681129
size 106215

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:83484ed9f4a37cf610ee3d80b579a9ea019b03cdca39219d0de380391bc3e601
size 71163

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:158636ed3788f981a214235c8b80c789260dafb329b489dd43b8d6959080362f
size 96799

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:449b9d909d85dd96d396809844e5dbd145c33f08022aec1077c4335f927a7473
size 49477

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:20286a44f83eba192eb45dcd3cd3a1fc2cd33e80382ac4b1c4fe310891974e89
size 57840

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c533115109ed33894c336cf2bf94d74e3b84154cc69242797c4a4e71e2375e99
size 48641

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2d11742d39eee7b628bd3edc139edb6ffce8041076b564e04d1963e2d410b6a1
size 100710

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d84b02aca8cfa1825ff3d76d33af7d292774e30ee7d35605ec3f5aff4f45721
size 52745

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c98f948e9f470166a25fd213066b1e09854618c50c7ba00b4624074a4ec0c677
size 70749

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eaf1243c0831678a4c2e3c31cae0d2af6be1b9d141cd025639c9fff96f793cfd
size 62016

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9f2b26ba9d956f2f6ae8b876388cee960b4258112a4edd1eef01864b15bb6475
size 61960

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7b025f6abb8a7383601e823dd0da26576eb0c3184e10186fe9ccdb2a87258208
size 82661

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9140f3ba42db44eac39396cbb93e6529567603092fea2073bd29cd8d4bc59784
size 91751

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:00c95002b9b6599e00c664def1819a2debff2fac6b0e60711e3793262ee74525
size 68688

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8aa6b46583667fac1232f693f8bdf574594a2e1ffea0c6e08799df9d4d0c9c1e
size 95403

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b962e80e88b306f31794f96d84a790021806822ac782114ec13f7852cb2830eb
size 61796

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3447987b5d3c705516409d6fc8261754dbb741c1e7c8ea6ec8792a4ee8d663aa
size 67348

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e9ced971531f5b4a067c12cd40ab0fba977ebb95b96acc65bf1fb185194df4f0
size 64626

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:49e3a4379d757d47044a12897c316420940e48e3373d89ab2aaa22bcb49bcd6c
size 78082

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ff8e5cd91a6993cfceed2598fb93f048a9dadce27c90cc281166011f61b9a983
size 49417

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:66dbe6b823cac5953c9236b338dcd84c44763a0b51624e1115586551ce8a846d
size 79493

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:24c060fc935e0c8cf471895b8e6965bad7b33e2672ed66283bb5465ad87b7b6d
size 45417

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4f489c91a9b333a6bb07c28873bd1ed763a4a231dba87f31b537e26ef6e7d005
size 55841

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:09a12ab9b4b039a51987e2856d237b4fc93c4d52abb3435acc67cabb4b8e2b67
size 61013

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0fb0459a365daaec6ddadd2566076d614af03b57e199e3825a03d7baa29ba03b
size 114810

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7dd914b5edd67fc5d1d84a5a6c4d7d483811e72412ed8ca6853a6af6f47ecc27
size 152444

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:202d37739a673cbc8708681b7b7361d00257f44af649a6135873cd5f6ce474ff
size 44499

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d33f40ed95f554ab4f12f7e293f004383476ab1bc4a71c02919c23ab933bd55
size 155413

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cf97600e0afca9e17fdc857f6f5008a13175eb39b480c407d787cef40e88aabb
size 117430

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c34951b69733f065d69aec46c45bd6f3c885203016b461a163314958d3a8ee22
size 49600

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:53a7e3291304c8e9a14b9cde53ea8d01cab32b214e71e4127bd1fa7474bba318
size 51928

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:653fce08261b0d5485bfb579f1a054022773b8f5d542d04e0c05ea16ce3b8b48
size 53703

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5c1dc011d63d0f1bbb21da45173383c22b5549181be804b3cfbd6c788b017284
size 44401

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8a5b1ad62c3f1e364998c0438b4921ae05190bb2355fb7334ef622ddf34e7b99
size 52985

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:248c24e7f15c814940bbbd9450f21e61105cb74d833a7c25a1f419195e9c36b3
size 45400

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dd5d100dd7a342b774794457a90645fd719f86c949f7c44886cf5d57f5d96bbc
size 77606

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d2bfaa67d5949850b5fb4f67ea67c77f472a3d9b7836a0f9d59e007d4be8065e
size 89131

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c9bf6c1135902cd700333e78a5ccc0afee1716e09456f5cf6f6e4d314900ab40
size 56429

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:91897e37c2392f14af6b450ef5da027df97dcf64ca95aefd91175883528ca517
size 49875

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5af6f39f6fcaa559eec3ee73b274f4ffa8bf4a53fda2753bc387c354d4ba17fb
size 121157

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:547e02f01312a70f41a362439774d9bdc4c60d77ebcf2fc47c1efc1d645da666
size 60527

Some files were not shown because too many files have changed in this diff Show more