update rules

This commit is contained in:
Joe 2026-02-02 14:05:11 -06:00
parent 4c390fdd37
commit d5522b2fef
8549 changed files with 11783 additions and 1888 deletions

View file

@ -0,0 +1,80 @@
---
title: Test in Blender
comments:
description: Verify the important aspects of your character model in Blender before importing into Studio.
next: /art/characters/testing/studio
prev: /art/characters/testing/
---
You can quickly verify many of your components in Blender, allowing you to catch out problems that may cause issues later on. You can use a mix of Blender native tools and Roblox's helper plugins to check for many common issues in your character model.
## Facial animation data
Facial animation uses multiple modeling components to work effectively. If using a template, or making changes to a model with existing facial animation data, it's sometimes possible to make a change that affects the saved poses, either in the animation timeline, or in the custom property of the head mesh.
Use the following steps to help verify the integrity of your facial animation data:
1. With the Armature object selected, check the animation frame in the **timeline**:
1. The timeline typically ranges between **0–330**, though not all templates use the entire range, and there may be gaps between poses.
<img src="../../../assets/art/avatar/basic-creation/Testing-Animation-Timeline.png" />
2. The **neutral pose** should be on **frame 0**.
3. There shouldn't be any keyframe gaps between the frames with animation data.
2. Verify the **Object Properties** > **Custom Properties** panel for the Head_Geo object:
<img src="../../../assets/art/avatar/basic-creation/Testing-Custom-Properties.png" width = "80%" />
1. There should be a **RootFaceJoint** attribute set to the name of the first facial animation bone.
1. This bone should be a child of the **Head** bone, one of the 15 required bones in an avatar's armature.
2. In templates and some reference models, this bone is commonly named `DynamicHead` and indicates the beginning of the facial animation rig.
2. There should be about the same number of custom properties as unique animation frames, with each animation pose having its own mapped custom property.
3. The names for the mapped poses here should match the spelling and capitalization of the [FACS pose reference](../../../art/characters/facial-animation/facs-poses-reference.md).
<video controls src="../../../assets/art/avatar/basic-creation/Testing_01.mp4" width="100%"></video>
<Alert severity = 'error'>
If you discover issues with your face animation data, you may need to repeat the skinning, posing, or mapping processes for your character's head. See [Creating Heads](../../../art/characters/facial-animation/create-basic-heads.md) for a general overview of the avatar head creation process.
If you are using a template and run into issues, it's possible the facial data was overridden by a saved animation, or the rigging or mapped data was mistakenly deleted. If it's difficult to quickly identify and resolve the issue, it may be quicker to restart your character customization from the original template file.
</Alert>
## Body skin
Properly skinning your character models ensures natural joint movements and realistic poses and expressions. There are several ways to verify skinning data, like using Blender's Pose Mode to pose the joints and examine how certain orientations can affect the joint skinning.
Use the following steps in Blender to verify your joint skinning in Pose mode:
1. With the **Armature** object selected, navigate to the **Object Properties** > **Viewport Display** and enable **Show In Front**. This allows you to see and access bones within your character.
2. With the armature selected, and switch to **Pose Mode**.
3. Select all the face bones of your model and press <kbd>H</kbd> to hide. You can reveal these again later with <kbd>Alt</kbd><kbd>H</kbd> (<kbd>⌥</kbd><kbd>H</kbd>) in Pose mode.
4. Select any body bone and press <kbd>R</kbd> to rotate. Verify that your body bones correctly deform and bend the character mesh as expected in natural poses.
1. While actively rotating a bone, right-click to cancel the rotation and set the bone to its original position.
2. While actively rotating a bone, you can **click to confirm** the rotation and save the current position. You can combine this to make various poses of your character by changing the rotation of various limbs at once.
3. If you've saved a rotation, press <kbd>Alt</kbd><kbd>R</kbd> (<kbd>⌥</kbd><kbd>R</kbd>) to clear any rotation in Pose Mode. Make sure to reset your pose whenever you complete testing.
<video controls src="../../../assets/art/avatar/basic-creation/Testing_02.mp4" width="100%"></video>
You can also run through common poses and movements using Roblox's [Calisthenics Tool](../../../art/modeling/calisthenics-tool.md) add-on, which applies several common animations to an avatar armature that you can play back and review in Blender's animation timeline.
<Alert severity = 'warning'>
The [Calisthenics Tool](../../../art/modeling/calisthenics-tool.md) adds animations to your timeline to quickly preview body animations. Be careful when saving or exporting your character when using this tool, as it may conflict with saved facial animation data that uses the same timeline.
</Alert>
<video controls src="../../../assets/art/avatar/basic-creation/Testing_03.mp4" width="100%"></video>
<Alert severity = 'error'>
If you discover issues with your skinning, you may need to troubleshoot and reapply rigging and skinning steps to your humanoid. See [Rigging and skinning](../../../art/modeling/rigging.md) for an overview of the rigging and skinning processes.
If you are using a template, it's possible the skinning data was affected by a destructive modeling change. This may require reskinning, or starting over your character customization from the original template file.
</Alert>
## Technical specifications
Your avatar components should match the requirements provided in the [avatar specifications](../../../art/characters/specifications.md). When using templates and following appropriate non-destructive modeling practices, most of these components should not be touched, but you should still double-check that each component is compliant with the technical requirements.
<Alert severity = 'success'>
If you are using Roblox character templates and are ready to export into Studio, see [Exporting instructions](../../../art/characters/creating/export-textures.md) for specific export instructions for template files.
</Alert>

View file

@ -0,0 +1,96 @@
---
title: Testing characters
comments:
description: Verify the important aspects of your character model in Blender and in Studio.
next: /art/characters/testing/blender
---
It's important to constantly test your models during and after the creation process to ensure that your character can interact with various social and environmental elements in any experience.
Whether you are using a template character, or your own custom assets, use the information provided in [Test in Blender](../../../art/characters/testing/blender.md) and [Test in Studio](../../../art/characters/testing/studio.md) throughout your workflow to comprehensively test your assets and quality check your models.
Use the following table as an overview of common tests and resources to verify each component of your character model.
<Tabs>
<TabItem label="Blender">
<Alert severity = 'info'>
You can apply the following workflows with any modeling software, though certain interfaces and instructions may differ between platforms. See [Testing in Blender](../../../art/characters/testing/blender.md) for additional information.
</Alert>
<table>
<thead>
<tr>
<th style={{width:"25%"}}>Component</th>
<th>Testing recommendations</th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="../../../assets/art/avatar/Component-Body-Parts.png" /> <br /><center>**Body Parts**</center></td>
<td>When modeling, confirm that your geometry follows [avatar geometry specifications](../../../art/characters/specifications.md#geometry).</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/Component-Texture-Map.png" /> <br /><center>**Textures**</center></td>
<td>When texturing, confirm that your geometry follows [avatar texture specifications](../../../art/characters/specifications.md#textures). </td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/Component-Rigging.png" /> <br /><center>**Rigging**</center></td>
<td>Use [Blender's posing tools](../../../art/characters/testing/blender.md#body-skinning) to check the rigging and skinning quality of your asset.<br /></td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/Component-Facial-Animation-Data.png" /> <br /><center>**Face Animation**</center></td>
<td>Confirm that [your FACS data](../../../art/characters/testing/blender.md#facial-animation-data) is present and correctly configured.</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/Component-Cage-Mesh.png" /> <br /><center>**Cage Mesh**</center></td>
<td>Manually verify that your cage mesh completely and tightly covers your character model and follows [avatar outer cage specifications](../../../art/characters/specifications.md#outer-cages).</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/Component-Attachments.png" /> <br /><center>**Attachments**</center></td>
<td>Manually verify that your attachment points are correctly positioned and follow [avatar attachment specifications](../../../art/characters/specifications.md#attachments).</td>
</tr>
</tbody>
</table>
</TabItem>
<TabItem label="Studio">
<Alert severity = 'info'>
Roblox provides an uncopylocked testing place that includes quick access to various environments and testing features. See [Testing in Studio](../../../art/characters/testing/studio.md) for additional information.
</Alert>
<table>
<thead>
<tr>
<th style={{width:"25%"}}>Component</th>
<th>Testing recommendations</th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="../../../assets/art/avatar/basic-creation/Testing-Emotes.png" /> <br /><center>**Body Parts**</center></td>
<td>Verify your character's geometry while in [movement and animation](../../../art/characters/testing/studio.md#movement-and-animation).</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/basic-creation/Testing-Skin-Tone.png" /> <br /><center>**Textures**</center></td>
<td>Test your character in [various lighting environments and skin tone colors](../../../art/characters/testing/studio.md#lighting-and-color).</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/basic-creation/Testing-Outdoor-Environment.png" /> <br /><center>**Rigging**</center></td>
<td>Use [animations and testing environments](../../../art/characters/testing/studio.md#movement-and-animation) to verify your character's rigging, skinning, and movement.</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/basic-creation/Testing-Face-Animation.png" /> <br /><center>**Face Animation**</center></td>
<td>[Cycle through various facial animations](../../../art/characters/testing/studio.md#movement-and-animation) to ensure your character can express common expressions.</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/basic-creation/Testing-Clothing-Try-On.png" /> <br /><center>**Cage Mesh**</center></td>
<td>[Equip various clothing items](../../../art/characters/testing/studio.md#clothing-and-accessories) to check for fit and for any unexpected cosmetic issues.</td>
</tr>
<tr>
<td><img src="../../../assets/art/avatar/basic-creation/Testing-Clothing.png" /> <br /><center>**Attachments**</center></td>
<td>[Equip various accessory items](../../../art/characters/testing/studio.md#clothing-and-accessories) to verify rigid accessory placement and orientation.</td>
</tr>
</tbody>
</table>
</TabItem>
</Tabs>

View file

@ -0,0 +1,272 @@
---
title: Test in Studio
comments:
description: Verify the important aspects of your character model in a custom Studio test experience.
---
Test your character model in Studio to understand how it looks and feels within a Roblox experience. To test your custom character in Studio, first [import the character model](../../characters/import.md) into your Studio project.
You can test in Studio using the [Avatar Setup](../../../avatar-setup/) tool to preview and test various components of your avatar character.
You can also playtest your character in the [Avatar Test experience](https://www.roblox.com/games/13176231501/Avatar-Test-Place). This experience provides a wide variety of environmental and clothing tests to ensure that your character model and related components work as expected.
## Set up test experience
The following is the general testing process setting up the Avatar Test experience:
1. Download and open the [Avatar Test experience](https://www.roblox.com/games/13176231501/Avatar-Test-Place) in Studio.
2. Import your avatar model into Studio.
3. Set your model as the starter character.
4. Launch a playtest of the experience.
### Open in Studio
In order to use the [Avatar Test experience](https://www.roblox.com/games/13176231501/Avatar-Test-Place), you must first download it from Roblox. You can save the experience locally and make any changes that may help your testing workflow. Roblox may update this experience periodically to add or improve features.
To download the Avatar Test experience:
1. Navigate to the [Avatar Test experience](https://www.roblox.com/games/13176231501/Avatar-Test-Place).
2. In the button next to the experience title, select **…** > **Edit**. The page navigates to the Studio launcher.
<img src="../../../assets/art/avatar/basic-creation/Testing-Avatar-Test-Place.png" />
<img src="../../../assets/art/avatar/basic-creation/Testing-Studio.png" />
### Import
After you open the test experience in Studio, import your custom character model.
1. From Studio's **File** menu, select **Import 3D**. A file browser displays.
<img src="../../../assets/art/avatar/basic-creation/Testing-3d-Importer.png" />
2. Select your custom character `.fbx` file.
3. Verify the following:
1. With the highest level object selected, ensure **Rig Type** is set to R15.
<img src="../../../assets/art/avatar/basic-creation/Testing-Rig-Type.png" />
2. If using the template files, set **Rig Scale** to **Rthro**. Otherwise, use the appropriate rig scale for your [character body type](../../../art/characters/specifications.md#body-scale).
3. Check for any red errors that may block import into Studio.
4. Verify any yellow warnings that may indicate a quality issue with your avatar components.
<Alert severity = 'warning'>
The 3D Importer may incorrectly report some cage meshes as not watertight. You can ignore these warnings for those cage objects.
</Alert>
4. Click **Import**. The character's model populates into the workspace.
<Alert severity = 'warning'>
If an error or warning message displays in the **Output** window, see [Troubleshooting](../../../art/characters/facial-animation/use-heads-in-studio.md#troubleshooting) for guidance on how to handle your specific error or warning message.
</Alert>
### Add SurfaceAppearance
If you exported your textures separately, or if the 3D Importer fails to pick up your PBR textures, you can add them manually.
To add individual image texture files:
1. Open the **Asset Manager**. You may need to publish your experience first.
2. **Bulk Upload** the image map assets.
<img src="../../../assets/art/avatar/basic-creation/Testing-Asset-Upload.png" />
3. In the **Explorer**, expand the **Head_Geo** and check if a `Class.SurfaceAppearance` object exists.
- If `Class.SurfaceAppearance` is present, continue to step 4.
- If `Class.SurfaceAppearance` is not present, select the ⊕ next to the Head_Geo and add a `Class.SurfaceAppearance` object.
4. Set each property to the corresponding uploaded image map
<img src="../../../assets/art/avatar/basic-creation/Testing-Surface-Appearance.png" />
5. Copy the `Class.SurfaceAppearance` with the populated image map with <kbd>Ctrl</kbd><kbd>C</kbd> (<kbd>⌘</kbd><kbd>C</kbd>).
6. Hold <kbd>Shift</kbd> and click all of your model's MeshParts to select all of your character's geometry.
7. Use <kbd>Ctrl</kbd><kbd>Shift</kbd><kbd>V</kbd> (<kbd>⌘</kbd><kbd>Shift</kbd><kbd>V</kbd>) to paste into all of the head geometries. An updated `Class.SurfaceAppearance` populates in each `Class.MeshPart` object.
<img src="../../../assets/art/avatar/basic-creation/Testing-Surface-Appearance-Applied.png" />
### Set model as StarterPlayer
In order to play as the character during a playtest, rename and move the model instance:
1. In the **Explorer**, rename the character **model** as `StarterCharacter`.
2. In the **Explorer**, navigate to the `Class.StarterPlayer` directory. If a `StarterCharacter` model already exists, remove it.
3. Click and drag the model under the directory.
<img src="../../../assets/art/avatar/basic-creation/Testing-StarterPlayer.png" />
After you rename and add your model, [playtest](../../../studio/testing-modes.md#playtesting) the experience as the custom model.
## Use test experience
The Avatar Test experience includes several features in the interface and environment to quickly perform comprehensive tests of your avatar characters. You can use the [test checklist](#checklist) to ensure you are reviewing all the important aspects of your avatar character.
When playtesting the experience, use the following UI buttons on the right side to open various testing tools and options:
<table>
<thead>
<tr>
<th><center>Button</center></th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Face.png" width="57" height="60" /><br />Avatars and facial animation</center>
</td>
<td>Use this menu to swap between the custom avatar and control avatars. An additional button option allows you to loop through various facial animations to test your character's face expressions.</td>
</tr>
<tr>
<td><center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Emote.png" width="53" height="56" /><br />Emotes and animations</center></td>
<td>Use this menu to test various animations on your avatar character. </td>
</tr>
<tr>
<td><center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Skin-Tone.png" width="54" height="53"/><br />Skin tone color palette</center></td>
<td>Use this menu to select a new skin tone for your character. See <a href="../../../assets/art/avatar/basic-creation/Testing-UI-Emote.png">Custom Skin Tones</a> for more details on this implementation with template character models. </td>
</tr>
<tr>
<td><center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Clothing.png" width="53" height="53" /><br />Clothes and accessories</center></td>
<td>Use this menu to select various clothing items to try on. </td>
</tr>
<tr>
<td><center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Movement.png" width="48" height="53" /><br />Movement settings</center></td>
<td>Use this menu to change movement settings for your character model, such as **jump height** and **walk speed**. </td>
</tr>
<tr>
<td><center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Settings.png" width="48" height="59" /><br />Body proportion settings</center></td>
<td>Use this menu to change various aspects of your character's body proportions.</td>
</tr>
<tr>
<td><center><img src="../../../assets/art/avatar/basic-creation/Testing-UI-Lighting.png" width="51" height="51" /><br />Lighting presets</center></td>
<td>Use this menu to change the environment lighting to various presets, such as **Mountains - Sunset**, or **Indoor - Midday**.</td>
</tr>
</tbody>
</table>
### Checklist
Use the following checklists to ensure that you are comprehensively testing each component of your avatar. Use the Avatar menu to switch between your custom avatar and a control avatar to verify expected behavior.
#### Movement and animation
<GridContainer numColumns="3">
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Emotes.png" /> <figcaption>Testing guitar animation emote</figcaption></figure>
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Water.png" /><figcaption>Testing water movement</figcaption></figure>
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Ramps.png" /><figcaption>Testing ramp movement</figcaption></figure>
</GridContainer>
Check the following for any anomalies:
<table>
<thead>
<tr>
<th>Function</th>
<th>How to test</th>
</tr>
</thead>
<tbody>
<tr>
<td>Walking</td>
<td>Move the character around the environment, ramps, and platforms.</td>
</tr>
<tr>
<td>Sitting</td>
<td>Move to any of the seats in the environment and press <kbd>E</kbd> to sit.</td>
</tr>
<tr>
<td>Climbing</td>
<td>Move to any of the trusses and ladders. Your character automatically begins climbing when near.</td>
</tr>
<tr>
<td>Swimming</td>
<td>Use the pool of water at the top of the ramp area to verify your swimming animation.</td>
</tr>
<tr>
<td>Jumping</td>
<td>Press <kbd>Space</kbd> to jump.</td>
</tr>
<tr>
<td>Dying</td>
<td>Use any of the death cubes to set your character to a ragdoll state and respawn.</td>
</tr>
<tr>
<td>Facial Animation</td>
<td>Use the **Face UI menu** to toggle a face animation cycle.</td>
</tr>
<tr>
<td>Emotes and Animation</td>
<td>Use the **Emote UI menu** to access and play the available emotes. </td>
</tr>
</tbody>
</table>
If you see unexpected behavior with your character's movement, there may be some issues with the rigging or skinning of your character. It may require revisiting the rigging and armature components of your avatar model in your modeling application.
#### Lighting and color
<GridContainer numColumns="2">
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Skin-Tone.png" /> <figcaption>Testing skin tones</figcaption></figure>
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Lighting.png" /><figcaption>Testing environmental lighting</figcaption></figure>
</GridContainer>
Check the following for any anomalies:
<table>
<thead>
<tr>
<th>Function</th>
<th>How to test</th>
</tr>
</thead>
<tbody>
<tr>
<td>Skin tone</td>
<td>Use the **Skin Tone UI** menu to test various skin tones for texturing and lighting compatibility.</td>
</tr>
<tr>
<td>Environmental lighting</td>
<td>Use the **Lighting UI menu** and the environment to check how your character's surface appearance displays in various conditions.</td>
</tr>
</tbody>
</table>
If you see unexpected behavior with your character's appearance in various lighting and color selections, there may be some issues with the texturing of your character. It may require re-adjusting the texturing components of your avatar model in your modeling application.
#### Clothing and accessories
<GridContainer numColumns="2">
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Clothing.png" /> <figcaption>Test a mix of clothing and accessories</figcaption></figure>
<figure><img src="../../../assets/art/avatar/basic-creation/Testing-Clothing-Try-On.png" /><figcaption>Use the UI menu or pedestals to equip or reset clothing and accessories</figcaption></figure>
</GridContainer>
Check the following for any anomalies:
<table>
<thead>
<tr>
<th>Function</th>
<th>How to test</th>
</tr>
</thead>
<tbody>
<tr>
<td>Equipping accessories</td>
<td>Use the **Clothes and Accessories UI menu** or environmental pedestals to equip rigid accessories to your character.</td>
</tr>
<tr>
<td>Equipping clothing</td>
<td>Use the **Clothes and Accessories UI menu** or environmental pedestals to equip rigid accessories to your character. Test your clothing in motion and in animations to verify the fit.</td>
</tr>
</tbody>
</table>
If you see unexpected behavior with your character wearing clothes or equipping rigid accessories, there may be issues with the caging or attachment points of your character. You may need to re-adjust the cage mesh shapes or attachment objects of your avatar model in your modeling application.
<Alert severity = 'warning'>
Clothes can layer in unconventional orders, such as a jacket worn below a tshirt. You can reset the equipped clothing and try various combinations of clothing options and ordering.
</Alert>