Hi Creators!
We’re excited to announce a significant leap forward in avatar creation on Roblox: In-Experience Auto Setup! This new feature brings the power of our Avatar Auto Setup pipeline, previously only available in Studio, directly into your experiences, allowing users to create fully rigged, skinned, and caged avatars from arbitrary models.
We’re releasing it as a Studio Beta for now, allowing you to implement it in your experiences within Studio and provide your valuable feedback as we continue to build it out for a full release in live experiences.
To enable this beta in Roblox Studio, follow these simple steps:
- Open Roblox Studio and navigate to the “File” menu.
- Click on “Beta Features”.
- Enable the “In-Experience Avatar Auto Setup” option by checking the corresponding checkbox (see screenshot below) and press Save.
- Restart Roblox Studio when prompted.
What is In-Experience Auto Setup?
For those familiar with Avatar Auto Setup in Studio, you know it’s a game-changer for streamlining the avatar creation process. It allows you to automatically rig, cage, segment, and skin your 3D models in minutes, saving hours of manual work. In-Experience Auto Setup extends this functionality, enabling players in your experience to:
- Provide a simple model as input: A Model with a single mesh and texture can be transformed automatically into a Roblox-ready avatar. See Auto-setup model requirements for more details on acceptable inputs.
- Receive editable outputs: The generated bodies will be delivered as EditableMesh and EditableImage outputs, giving both you and your players the flexibility to further customize the avatar after Auto setup has run. This means players can tweak textures, adjust colors, or even modify the body shape (e.g., make muscles larger, heads rounder, or legs bigger) directly within your experience.
- Publish to the platform: When combined with PromptCreateAvatarAsync, users can pay for and publish their newly created and customized avatars to the Roblox platform for use across all experiences! Imagine a user molding a unique avatar from clay within your experience, running it through Auto setup, refining its appearance, and then publishing it for others to see and use.
The new APIs
- AvatarCreationService:AutoSetupAvatarAsync: Accepts Player and Model params and yields until the Avatar auto setup process has completed. It must be called on the server and will return a unique avatar generation ID string that can be used to load the avatar on both client and server.
- AvatarCreationService:LoadGeneratedAvatarAsync: Accepts an avatar generation ID returned by the function above. It will return a HumanoidDescription with all of the generated instances and properties. Mesh and texture assets will be provided as EditableMesh and EditableImage objects respectively, to allow continued editing of the generated avatar.
-- Must be called on the server:
local function setupAvatar(player: Player, avatarModel: Model)
local pcallSuccess, result = pcall(function()
local generationId = AvatarCreationService:AutoSetupAvatarAsync(
player,
avatarModel
)
-- Load and store on the server to use with PromptCreateAvatarAsync
local humanoidDescription = AvatarCreationService:LoadGeneratedAvatarAsync(generationId)
print("storeOnServer:", generationId, humanoidDescription)
-- Signal the client so it can load the avatar for local preview
LoadAvatarEvent:FireClient(player, generationId)
end)
if not pcallSuccess then
warn("Avatar setup failed:", result)
end
end
Example Roblox Experience
We have a demo experience, Avatar Auto-Setup Demo, that shows how these APIs all work together. That place is un-copylocked so that you can edit a copy of it in Studio. The source code is also available directly on Github.
Why In-Experience Auto Setup?
Our vision is to empower anyone to create anywhere on Roblox. By bringing Auto Setup into experiences, we’re lowering the technical barriers to avatar creation and enabling rich, user-driven avatar customization experiences, allowing people to turn raw materials into Roblox-ready avatars.
Known Issues
One known issue at this time is with creating FACS-enabled Heads. To ensure eyes and mouths animate as expected, you will need to provide separate eyeballs and mouthbags for the Auto setup process.
We can’t wait to see the incredible avatar creation experiences you’ll build with In-Experience Auto Setup! Your feedback during this beta period is invaluable as we work to refine and enhance this feature.
Thanks for reading!
Special thanks to the team that helped make this happen: @haomiaojiang, @anonymoose_bin @HaloArbiter_101, @FarazTheGreat, & @timetopretend8.