When creating accessories and clothing for Roblox, it's important to meet specific technical requirements to ensure compatibility and optimize for performance and quality.
Although rigid accessories and layerable accessories share many technical requirements, layerable accessories must include additional components to ensure the accessories deform and stretch appropriately on different body types. If you are intending to publish and sell these assets on the Marketplace, there are additional Marketplace Policy standards that you must follow for any accessory or clothing item.
When ready to export, see Export Requirements for mesh export settings for Blender and Maya.
Budgets - Accessories can't exceed 4k triangles.
Texture Budget - Texture maps can't exceed 1024x1024px. Assets using additional maps with SurfaceAppearance can use smaller 256x256px maps to optimize performance with virtually no loss in detail.
Watertight - All geometry must be watertight without exposed holes or backfaces.
No N-gons - Models must be in quads where possible.
Mesh Size - Meshes must follow a standard size (in studs, centered on attachment point) depending on its type:
|Asset Type||Width (X)||Height (Y)||Depth (Z)|
|T-Shirt, Shirt, Sweater, Jacket, Pants, Shorts, Dress & Skirt||8||8||8|
(Not centered: 2 up, 3 down)
(Not centered: 1.5 front, 2 behind)
|Eyebrow and Eyelashes||1.5||0.5||0.5|
(Not centered: 1.5 front, 3 behind)
(Not centered: 1.5 up, 2 down)
Attachments are points on the accessory model that connect to another attachment of the same name on a character model. It is important that these are correctly applied so rigid accessories can attach to your models. Layered accessories also use attachment points to correctly associate with various body parts. See the following specifications for attachments:
One attachment - Each accessory, including layered accessories, require at least one attachment point to its associated body part.
Naming Convention - The Attachment name must follow a specific naming convention depending on the Accessory.AccessoryType. The Accessory Fitting Tool generates an appropriate Attachment name automatically.
If setting attachment names manually, use the following Attachment name for each accessory type:
Accessory Type Attachment Name Hat HatAttachment Hair HairAttachment Back BodyBackAttachment Waist WaistFrontAttachment, WaistCenterAttachment, WaistBackAttachment Shoulder RightShoulderAttachment, RightCollarAttachment, NeckAttachment, LeftCollarAttachment, LeftShoulderAttachment Face, Eyelash, Eyebrow FaceFrontAttachment, FaceCenterAttachment Neck NeckAttachment Front BodyFrontAttachment Layered tops (Shirt, TShirt, Sweater, Jacket) BodyFrontAttachment Layered bottoms (Pants, Shorts, DressSkirt) WaistCenterAttachment
Shoulders and Collars - Even though they are in similar locations, Shoulder and Collar attachment points interact with character rigs differently for rigid accessories.
- Items using RightShoulderAttachment or LeftShoulderAttachment move with the character's arm.
- Items using RightCollarAttachment or LeftCollarAttachment do not move with the character's arm.
To achieve the layering effect, your clothing must meet the following requirements:
- Asset must be weighted and bound to an R15 skeleton (Maya) or armature (Blender).
- Asset must continue to follow any applicable custom mesh requirements, such as best practices on watertightness, textures, and polycount budgets.
See Creating Layered Models for a basic guide on applying these requirements on a reference asset in Blender. Once the .fbx file is exported, see Accessory Fitting Tool for instructions on creating an accessory from your model.
Rigging and skinning a layered accessory allows the accessory to move naturally with a character body. You can perform this manually through a modeling tool, or use automatic skinning transfer to generate an accessory's skinning data at run time.
If using modeling software to skin your accessories, keep in mind that Joint Influences (Maya) or Bone Assignments (Blender) per vertex should be limited to 4.
For more information on basic skinning in third-party modeling software, such as Blender's Automatic Weights, see Skinning a Simple Mesh for instructions on rigging, applying weights, and skinning a basic mesh.
Cage meshes, or cages, are invisible meshes that define the inner and outer surfaces of your asset. Similar to collision boxes, these surfaces prevent other accessories or bodies from clipping or breaking and allow other accessory items with cages to layer on top of the previous object.
The inner cage is the inner surface of your model and defines how the layered asset fits over another layered model. As a best practice, the shape of the inner and outer cage should match each other before editing the outer cage to completely cover your asset.
The inner cage mesh object must have the same name as the accessory model appended with _InnerCage.
The outer cage defines the external surface that another item's inner cage would layer on top of. Avatar character models must have an outer cage included with its model in order to be compatible with layered clothing. All avatar models available on the Marketplace include a properly configured outer cage and are compatible with layered assets.
The outer cage of a layered clothing asset is a mesh that precisely covers the clothing item. The outer cage included in the template files is identical to the inner cage by default and must be the only cage adjusted to fit over an accessory.
The outer cage mesh object must have the same name as the accessory model appended with _OuterCage.
Your items must meet the following requirements before you upload them to the Marketplace to sell:
- Ensure that your items adhere to the Marketplace Program Guidelines.
- Object Material is set to Plastic.
- Object Transparency is set to 0.
- Object VertexColor is the default 1, 1, 1.