Character Specifications | Documentation - Roblox Creator Hub (2024)

Character models require a specific set of components and configuration standards to ensure all avatar features work as expected. Check that your model meets the following modeling specifications and guidelines before exporting to ensure Studio compatibility.

When ready to export, see Export Requirements for mesh export settings for Blender and Maya.

If creating other types of 3D models:

  • When creating a generic mesh, your model must meet General Mesh Specifications.


  • When creating a rigid accessory model, see Accessory Specifications.


  • When creating a clothing accessory model, see Clothing Specifications.

Geometry

Avatar character models are made up of 15 separate mesh objects and require additional geometry requirements to import into Studio and publish successfully. In addition to the body types, parts, and budget specifications, ensure that your models also fulfill the following general requirements when modeling:

  • Watertight - All geometry must be watertight without exposed holes or backfaces. Meshes used as outer cages do not need to be watertight.

  • No N-gons - Model your assets in quads where possible.

  • Transformations - All translation, rotation, and scale values must be frozen and pivots set to 0, 0, 0.

  • Orientation - Characters must face positive Z and stand up in positive Y.

  • Pose - Before exporting, set your character to an I-Pose when possible.

Body Scale

Roblox supports 3 standards of body scales: Normal, Slender, and Classic. These standards allow developers to create experiences and spaces with consistent body sizes for standardizing movement and interaction. While the minimum sizes for each body scale is the same, each body scale has a unique maximum total body size, as well as a range for each body asset.

Character Specifications | Documentation - Roblox Creator Hub (1)

Since body assets partially overlap with each other, the total body dimensions do not represent the sum of the avatar's asset dimensions. The total body dimension is the most important factor of each body scale to ensure a standard avatar size and scale.

Normal

Character Specifications | Documentation - Roblox Creator Hub (2)

In the 3D Importer, use Rig Type > Rthro to import your model as a Normal body scale.


PartX (width)Y (height)Z (depth)
Head.5.5.5
Arm.251.5.25
Torso12.7
Leg.252.5
Total1.54.5.7
PartX (width)Y (height)Z (depth)
Head322
Arm24.52
Torso432.25
Leg1.532
Total882.25

Slender

Character Specifications | Documentation - Roblox Creator Hub (3)

In the 3D Importer, use Rig Type > Rthro Narrow to import your model as a Slender body scale.


PartX (width)Y (height)Z (depth)
Head.5.5.5
Arm.251.5.25
Torso12.7
Leg.252.5
Total1.54.5.7
PartX (width)Y (height)Z (depth)
Head222
Arm1.542
Torso2.532
Leg1.532
Total5.582

Classic

Character Specifications | Documentation - Roblox Creator Hub (4)

In the 3D Importer, use Rig Type > Default to import your model as a Classic body scale.


PartX (width)Y (height)Z (depth)
Head.5.5.5
Arm.251.5.25
Torso12.7
Leg.252.5
Total1.54.5.7
PartX (width)Y (height)Z (depth)
Head1.51.752
Arm232
Torso3.53.252
Leg1.52.752
Total7.57.752

Triangle Budgets

Although model geometries are typically created using quads, the Roblox engine converts imported assets into tris. Each asset of your character model must not exceed our maximum tri budget. To quickly get the number of expected tris in your third-party modeling application, you can double the number of quads in your model.

When character models are uploaded to Studio and created into assets for the Marketplace, the body is split into 6 individual assets: DynamicHead, Torso, LeftArm, RightArm, LeftLeg, RightLeg.

Asset TypeIncluded Mesh ObjectsMaximum Triangles
DynamicHeadHead4000
TorsoUpperTorso, LowerTorso1750
LeftArm LeftUpperArm, LeftLowerArm, LeftHand1248
Right ArmRightUpperArm, RightLowerArm, RightHand1248
LeftLeg LeftUpperLeg, LeftLowerLeg, LeftFoot1248
Right LegRightUpperLeg, RightLowerLeg, RightFoot1248
TotalHead, UpperTorso, LowerTorso, LeftUpperArm, LeftLowerArm, LeftHand, RightUpperArm, RightLowerArm, RightHand, LeftUpperLeg, LeftLowerLeg, LeftFoot, RightUpperLeg, RightLowerLeg, RightFoot10,742

Body Parts

See the following specifications for the individual mesh objects that make up a character model:

  • Naming Convention - Limbs must all be specifically named:

    • UpperTorso_Geo

    • LowerTorso_Geo

    • LeftUpperArm_Geo

    • LeftLowerArm_Geo

    • LeftHand_Geo

    • RightUpperArm_Geo

    • RightLowerArm_Geo

    • RightHand_Geo

    • LeftUpperLeg_Geo

    • LeftLowerLeg_Geo

    • LeftFoot_Geo

    • RightUpperLeg_Geo

    • RightLowerLeg_Geo

    • RightFoot_Geo

    • Head_Geo

  • Caps - Limbs must be capped, so that they form a full watertight mesh when separated from the body. Caps can be rounded or flat depending on design.

    Character Specifications | Documentation - Roblox Creator Hub (5)

Face Accessories

Face accessories, such as hair, eyebrows, and eyelashes are unique accessories that you can bundle with an avatar body upload. At this time, eyebrows and eyelashes can not be uploaded as standalone accessories and must be bundled with an avatar body. See Accessory Specifications for additional information on face accessories.

Visibility

To ensure that avatar sizes are visually consistent, you must standardize body part visibility with the following requirements:

  • Opacity - Body parts must be fully opaque.

  • Bounding Boxes - Body part assets must take up a significant visible portion of their bounding box in a front, side, and back view.

    • Body parts, such as Torso, Left Arm, Right Leg, must take up at least 50% of body part's bounding box.

    • The head part must take up at least 35% of the mesh's bounding box.

      Character Specifications | Documentation - Roblox Creator Hub (6)
      Character Specifications | Documentation - Roblox Creator Hub (7)

Attachments

Attachments are points on the humanoid model where rigid accessories attach. Like many character components, attachment points are set up in third-party modeling software and imported as Attachment objects.

The 3D Importer automatically recognizes and converts mesh objects as attachment points if the objects include the affix \_Att and follow the naming conventions below. This only applies when importing meshes with caging data, such bodies. Check out examples of this implementation in any of the downloadable reference models.

Generally, when placing attachment points, position them so they overlap halfway with the character model's mesh part.

Character Specifications | Documentation - Roblox Creator Hub (8)
Character Specifications | Documentation - Roblox Creator Hub (9)

Attachments must follow a specific naming convention and positional consistency:

Mesh PartAttachment NameDetails
HeadFaceCenter_AttAnywhere within mesh bounding box
FaceFront_AttFront half of mesh bounding box
Hat_AttTop half of mesh bounding box, can overlap with Hair_Att
Hair_AttTop half of mesh bounding box, can overlap with Hat_Att
UpperTorsoLeftCollar_AttLeft top half of mesh bounding box
RightCollar_AttRight top half of mesh bounding box
Neck_AttTop half of mesh bounding box
BodyBack_AttBack half of mesh bounding box
BodyFront_AttFront half of mesh bounding box
LowerTorsoRoot_AttMust set to 0, 0, 0 position
WaistFront_AttFront half of mesh bounding box, can overlap with WaistCenter_Att
WaistBack_AttBack half of mesh bounding box
WaistCenter_AttAnywhere in mesh bounding box, can overlap with WaistFront_Att
RightUpperArmRightShoulder_AttTop half of mesh bounding box
RightHandRightGrip_AttAnywhere in mesh bounding box, must set the rotation of the RightGrip_Att to 90, 0, 0
LeftUpperArmLeftShoulder_AttTop half of mesh bounding box
LeftHandLeftGrip_AttAnywhere in mesh bounding box, must set the rotation of the LeftGrip_Att to 90, 0, 0
RightFootRightFoot_AttAnywhere in mesh bounding box
LeftFootLeftFoot_AttAnywhere in mesh bounding box

Rigging

Unlike generic rigs, humanoid models require a specific hierarchy and naming conventions for the internal bone or joint structure.

Character Specifications | Documentation - Roblox Creator Hub (10)
Character Specifications | Documentation - Roblox Creator Hub (11)

See the following requirements for humanoid rigging:

  • Rig Hierarchy - Humanoid rigs require a specific bone hierarchy and naming convention:

    • Root

    • HumanoidRootNode

    • LowerTorso

    • UpperTorso

    • Head (representing the base of the neck)

    • LeftUpperArm

    • LeftLowerArm

    • LeftHand

    • RightUpperArm

    • RightLowerArm

    • RightHand

    • LeftUpperLeg

    • LeftLowerLeg

    • LeftFoot

    • RightUpperLeg

    • RightLowerLeg

    • RightFoot

    Character Specifications | Documentation - Roblox Creator Hub (12)
    Character Specifications | Documentation - Roblox Creator Hub (13)
  • LowerTorso and Root - The LowerTorso and Root bone or joint position must be set to 0, 0, 0.

  • Pose - Export your character model in an I-Pose for the best Studio compatibility. The LeftUpperArm and RightUpperArm bones can be exported with rotation values to meet this requirement.

Skinning

Roblox supports skinning for rigged meshes. See Rigging and Skinning for more details on implementing skinned meshes in your experience.

See the following requirements for skinning:

  • Max Influences - A vertex can not be influenced by more than 4 bones or joints.

  • No Root Influences - Do not apply influences to the Root bone or joint.

  • Symmetry - When possible, maintain symmetry when applying influences to a rig.

Facial Animations

Roblox supports facial animation on character heads and can support more than 50 base poses. If you are creating an avatar character, it must, at minimum, include the following 17 FACS reference poses to support avatar chat:

  • EyesLookDown

  • EyesLookLeft

  • EyesLookRight

  • EyesLookUp

  • JawDrop

  • LeftEyeClosed

  • LeftLipCornerPuller

  • LeftLipStretcher

  • LeftLowerLipDepressor

  • LeftUpperLipRaiser

  • LipsTogether

  • Pucker

  • RightEyeClosed

  • RightLipCornerPuller

  • RightLipStretcher

  • RightLowerLipDepressor

  • RightUpperLipRaiser

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.

Textures

Avatar characters must follow Roblox's texture specifications. Characters created for the Marketplace can take advantage of custom skin tones which use alpha layers allow users to select their own base color.

Custom Skin Tone

When texturing an avatar character model where the user can set their own skin tone, set the exposed skin areas as transparent so a default color or texture is not baked into the texture. When rendering, the Studio engine applies the transparent layer on top without any layer effects. This step applies mostly to human-like characters with exposed skin that you intend users to customize.

The following are examples of skin tone shading for the face, and you can apply this process with any part of an avatar with exposed skin:

Character Specifications | Documentation - Roblox Creator Hub (14)
  • Use 100% opacity for areas not related to a customized skin tone, such as eyes and brows.

  • When applying shading, use black at low opacity and adjust opacity when needed.

  • For areas that are partially translucent, such as shading contours or certain cosmetic features, leave some transparency for partial visibility of the skin tone.

  • You should consistently test out how various colors layers can interact with your shading.

Character Specifications | Documentation - Roblox Creator Hub (15)
Character Specifications | Documentation - Roblox Creator Hub (16)
Character Specifications | Documentation - Roblox Creator Hub (17)
Character Specifications | Documentation - Roblox Creator Hub (18)

Outer Cages

Outer cages are non-rendered meshes that Roblox uses to define the outer surfaces of a body part using a WrapTarget instance. Outer cages on your character model allow your character to wear layerable accessories, such as clothing.

For general use, see the following requirements for adding inner and outer cage meshes to your model:

  • Naming Conventions - The inner and outer cage must be named after the primary mesh object with _InnerCage and _OuterCage affixed.

    Character Specifications | Documentation - Roblox Creator Hub (19)
  • Outer Cage - Models, such as a playable character, that aren't expected deform but are the target of meshes that will stretch over it, only require an Outer Cage.

  • Vertices and UV Map - Don't delete vertices or alter the UVs on the Outer Cages as this can cause errors when importing in Studio or when equipping onto a character. Use the Roblox provided templates for the cage meshes to ensure compatibility with other layered assets.

  • Symmetry and consistency - Keep each face (the space between vertices) consistently sized and retain symmetry wherever possible. Use symmetry tools in your modeling software whenever possible.

Marketplace Requirements

Along with the other technical requirements listed, your items must meet the following additional specifications before uploading them to the Marketplace to sell:

  • Ensure that your items adhere to the Marketplace Program Guidelines.

  • Whenever possible, ensure that your items adhere to the following modeling requirements:

    • Custom Mesh Specifications

    • Any applicable avatar specifications

  • Object Material is set to Plastic.

  • Object Transparency is set to 0.

  • Object VertexColor is the default 1, 1, 1.

  • If your head includes separate eyelash and eyebrow assets, you must add them to your character model as Accessory objects.

    • See accessory specifications for additional technical requirements.

  • Your Model instance doesn't contain extraneous objects, like Script or additional Part instances.

Character Specifications | Documentation - Roblox Creator Hub (2024)
Top Articles
Latest Posts
Article information

Author: Roderick King

Last Updated:

Views: 6181

Rating: 4 / 5 (71 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Roderick King

Birthday: 1997-10-09

Address: 3782 Madge Knoll, East Dudley, MA 63913

Phone: +2521695290067

Job: Customer Sales Coordinator

Hobby: Gunsmithing, Embroidery, Parkour, Kitesurfing, Rock climbing, Sand art, Beekeeping

Introduction: My name is Roderick King, I am a cute, splendid, excited, perfect, gentle, funny, vivacious person who loves writing and wants to share my knowledge and understanding with you.