Accessory Adjustment APIs for experiences

I’ve been playing around with accessory adjustment ever since it released last month, really amazing feature that we’ve definitely been needing for years. Since there’s finally an announcement thread on this, I want to ask a few things:


[1] Why are position/rotation/scale values automatically rounded to the nearest hundredth of a decimal? e.g. 0.957 would become 0.96


[2] If the Scale parameter is a Vector3, then why does the platform enforce uniform scaling? e.g. why can I not scale my accessories on only one or two axes, instead all 3 values have to be the exact same?

This feels like a seemingly pointless restriction that prevents a lot of potential with this feature, especially once more accessory types (especially ones that aren’t attached to the head) can be used with this feature.

R15 body scaling happens to affect your accessories, and I was hoping that this feature could be used to “reset” the automatic scaling of some of those accessories, by adjusting them back to a normal size. For example:

14 Likes

This is so awesome.

Currently, UGC creators have to make LOTS of variants of the same hats and stuff to cover all different positions and ways you can wear something but it be super cool if you can just tilt your hat and adjust the position of things.

Some accessories could form amazing combos since you can now just adjust their pose so they no longer clip or obstruct each other.

I recall that some hair, hats and ears don’t fit because they become this muddy mess, but being able to adjust them potentially solves this issue and allows for so much more expression!

Huge W feature.

9 Likes

30 fps ahh desktop app :100: :speaking_head: :fire: :fire:

8 Likes

Wait, so this is how people make those cool avatars :star_struck:

5 Likes

This is a slightly unrelated question, but are there plans for accessories inserted via InsertService to use MeshPart handles? Currently they still insert with part handles containing a SpecialMesh. I think now that we have SurfaceAppearance.Color (VertexColor replacement) and accessory adjustment, it would be great if we could opt into new insertion behavior. Thanks

4 Likes

The limits would be open to changing in the future! As for the old values, the feature was still WIP at the time so we changed to the current values after discussion.

3 Likes

YEAHHHHHH

I love this idea, usually to fix this was to try on multiple of similar accessory for one with the right size and position. But this is Golden!!!

4 Likes

We plan to allow accessory adjustment for other accessories soon! Likely Neck/Shoulder and Front/Back accessories.
For PromptCreateOutfit or PromptSaveAvatar being updated with this feature, you can now save accessory adjustments to the platform or user’s outfits (but they will be clamped within the limits given in AvatarEditorService:GetAvatarRules(). We were imagining a use case for in-experience Avatar Editors where devs could add their own UI to help the user adjust accessories and save to their account. In this case, our advice would be to use the values in avatarRules.AccessoryRefinementLowerBounds and avatarRules.AccessoryRefinementUpperBounds to know the min and max values for adjustments. For example, if you made a slider for Hat position adjustments in your Avatar Editor, you need avatarRules.AccessoryRefinementLowerBounds.Hat.Position.XPosition to get the minimum allowed X-axis adjustment limit, which is -0.25 at the moment. You can also call AvatarEditorService:ConformToAvatarRules() to make a HumanoidDescription clamp adjustment values.

8 Likes

That one in-game avatar saving function seems to have an issue. Not sure if it’s because it’s using v1, unless it uses v2 now, there was that Fast Flag about it once.

An Avatar can wear up to 10 Accessories of any type, and that in-game saving function cuts that away. Will that be fixed, so it doesn’t cut it away? :thinking:

2 Likes

Pretty cool adition but I have a question, are there any plans on making adjustments for avatar hair available too?

6 Likes

This is a truly innovative and amazing update.
Roblox we only wait for good updates like this.
We will continue to wait for good updates for our users.

3 Likes

Can this be used in games that have custom-character-customisation creation? E.g. selecting a hair to place on their character, can the API then be used to grant users the ability to change the hair’s position and et cetera, and save that information to a database?

Excited to see this finally possible!! But can we please start backfilling features to the website, this is getting ridiculous. The phone app is borderline unusable for me on a pixel 8 pro (a modern phone!!) for how laggy it is to change views and do actions, and everything new for avatars is only accessible there.

We are three features behind at the very least already; accessory adjustment, creating and selling avatars, and setting your avatar headshot.

Sometimes I dragged the wrong slider, and I had to go to the top right just to reset the value back to default…

I wanted to break out of this problem.

So, I made this Step by Step Guide for Roblox Staff to modify AdjustmentSlider Component within Lua App Universal App

1 Like

Will there be any template experience released with this functionality? (similar to the ugc shop template)

Thanks.

Unfortunately, we don’t plan to release a template experience.

Totally! Adjustment data would be saved through the same APIs such as AvatarEditorService:PromptSaveAvatar, the devs just need to add the metadata in the passed in HumanoidDescription’s AccessoryDescriptions

This is intentional behavior, though you can file a feature request to have this changed

Well, at the time I wrote that, I created this later AvatarEditorService issue with ConformToAvatarRules, it cuts away Accessories, because it doesn't know about 10 Accessory Limit for any Category

This might be the wrong place to ask this, but are there any plans to roll this feature out to other accessory types? It would be nice to be able to reposition Neck and Waist accessories as well.