How to use Roblox Accessory Fitting Tool
Table of Contents
Description
To publish an Accessory or attachment to Roblox Marketplace products must be assembled using the Accessory Fitting Tool, not because this is the only way to make an accessory for Roblox, rather because the Tool verifies the resulting game object and ensures compliance with Roblox Creator submission and product guidelines. The following walks through that process.
Duration: total c. 20 mins (00:20:00).
Info: 1080p.
Suitability: Beginner+.
Source: n/a.
Product ID: n/a.
Design note: additional considerations when the Accessory Tool to make items for Roblox using Blender;
Tool vs. Explorer
As briefly mentioned in the description, the Accessory Fitting Tool is not specifically necessary to create an accessory or attachment item for Roblox as they can be assembled manually in the project Explorer. This is generally done for items used within an experience. To upload and make accessories available in Roblox Marketplace, accessories must be set up using the Accessory Fitting Tool as the process doing more than just assembling items; during set up the tool inserts a non-editable data schema that’s used to verify (read: applies a ‘security layer’) and categorise items for sale – scripts, triggers and other potentially harmful material is stripped to prevent the publication of malware or other forms of malicious content.
Blender Mesh Prep
Before export from Blender ensure the accessory mesh is prepped for use. Typically this might mean (in no particular order);
• Model in-situ, re-centre at 0,0,0 for export
• Scale relative to avatar
• Apply all transforms (Ctrl + A)
• Triangulate mesh (Ctrl + T)
• Turn edges (optional)
• Reset/set object Origin (Object » Set Origin » [option])
• Single UV Map per object
• Single Texture atlas per object
• Optimise meshes
• Export to glTF or FBX for complex models, OBJ for simple diffuse only (no PBR)Aside: for more details on prepping meshes for Roblox in Blender see How to Prep Models/Meshes for Roblox in Blender.
As part of the preparation process objects should have a single UV mapped to a single image/texture atlas.Image Format
Blender can use any number of image formats interchangeably, even within the same project. For export to Roblox however, images should be swapped out for compatible formats to avoid Roblox Studio import issues. Supported formats are JPG, PNG and WebP. This applies to single diffuse only materials, or materials that use PBR (Physically Based Rendering) texture maps, i.e. normal, roughness, metallic etc.
Important: if normal maps are being used ensure they are saved uncompressed or using lossless compression to avoid visual artifacts being rendered, e.g. avoid using the standard JPG format.
Using GIMP to (re)save a TGA image as a lossless WebP image.Vertex Colours
Models exported for Roblox can be painted with vertex colours (vertex colors) in Blender and exported without issue. In Roblox however, their use is subject to a rendering limitation; vertex colours and images are not, by default, blended together if they’re part of the same material as they can be in Blender through the the Mix Color shader. The option to include vertex colours, without using a custom shader, is either/or; either the mesh is painted in full using vertex colours, or the mesh is textured using a bitmap image.
Aside: where vertex colours have been used, for example to baking as a diffuse image, be sure to decouple the nodes prior to export to prevent issues.Important: using vertex colours to paint a mesh may mean structurally rethinking it. For example, eyes can be painted to an bitmap/image with relative ease, whereas painting them using vertex colours necessitates the mesh having to physically including ‘eyes’ as part of the object else there’s either nothing to paint, or not enough surface data to paint to.
Model painted entirely using vertex colours in Blender that, while exportable, can’t blended with an image without a custom shader.Safe Zone Volume
During set up, as the Accessory Fitting Tool proceeds through the process, a fitting phase is presented that displays a semi-transparent volume around the attachment point previously established. This is a safe zone, an area meshes must remain or be contained within. anything outside this invalidates the game object. This determination, whether something is inside or outside, valid or invalid, is not determined by the model itself, the object visible to the user. It is instead determined by the models overall Bounding Box.
Important: there are essentially two volumes at play here;1) the objects volume, as defined by its bounding box.
2) the overall volume occupied by the object in the game world.While the bounding box never changes, because its defined by the models physical characteristics, the amount of space the overall object occupies does, depending on it’s orientation in the world. This is why models can appear correct in the tool but still error out, the bounding box position in space is the culprit not the visible model.
In practice this means that if the object is manipulated off-axes, or in a way that changes the orientation of the Bounding Box, any part of that that pokes through the safe zone, will invalidate the accessory despite the visible mesh appearing to be inside.
Alert: if the accessory being assembled needs to extend outside the safe zone associated with a given attachment point, e.g. an arm-length gauntlet, it will need to be set up, configured and published as clothing to bypass the single attachment point limitation of the Accessory Fitting Tool as multiple body zones would need to be accommodated – a gauntlet might need ‘hand, ‘lower arm’ and partial ‘upper arm’, whereas a accessory can only use ‘hand’ or ‘lower arm’ or ‘upper arm’.
The green outline approximates the objects overall volume, as defined by its Bounding Box, which pokes through the ‘safe zone’ because the model has been rotated off-axis, invalidating the accessory.
Timestamps
Times are approximate;
– 00:00 : Model Prep & Export
– 05:00 : Roblox Import
– 07:00 : Accessory Tool
– 10:00 : Bounding Box Issues
– 13:00 : Accessory Test
– 16:00 : Summary/Recap




