How to properly configure and import UGC bundles!

Note!

I will only explain in Blender terminology. For other 3D software, idk, but you'll probably figure it out, it's most likely very similar.

All resources and everything you need for this guide should be here: Avatar Characters | Documentation - Roblox Creator Hub, and here: Resources | Documentation - Roblox Creator Hub


Tips for separating the body parts

  • Before chopping up your model into different body parts duplicate your model first and keep it on the side.

  • Now separate the original model

  • After separating, add a Data Transfer modifier to all separated body parts. Let’s use the LeftLowerLeg as an example. In the Data Transfer in the LeftLowerLeg you would select your duplicated model as the source. Enable Face Corner Data and toggle on Face Corner Data > Custom Normals. Now your model should look smooth after separating.

  • After doing so to all body parts, apply all the Data Transfer modifiers and delete the duplicated model.


Configuring body cages in Blender

  • For body cages, you basically have to use the Roblox provided body cage resource to avoid errors.

  • Morph the separated body cage resource (Avatar Characters | Documentation - Roblox Creator Hub) to your character.

  • Avoid any sort of vertex or face deletion when morphing the body cage resource to fit your character.

  • After morphing, if not already linked, you will have to link the UV map data (ctrl + L) of the morphed copy with the original body cage resource to avoid UV errors when importing to studio.

  • Remember to be really careful when linking that you don’t link in the wrong selection order or don’t link the corresponding body parts.

  • When linking, select the YOUR morphed body cage part first, then the corresponding original copy of it.


Attachments

  • Position the attachment where they need to be (listed in the docs previously provided)

  • Attachments should NOT have their translation/position transform applied after positioning. Doing so will completely freak out Roblox studios attachments and tools and accessories will NOT work.

  • For what mesh to actually use when creating the attachments in Blender, I recommend the UV spheres with: segments–10, rings–10, diameter–whatever

  • Remember to rotate left/ right-grip 90 degrees on X axis.

Other than that you should be fine.


UV Mapping Body Parts for 2D Clothing

For the reference textures to use when UV mapping the geos, here you go:

You might think 2D clothing support for UGC bundles has been entirely removed, but that is actually false.
It’s no longer OFFICIALLY supported.

This means if you UV map the body parts correctly 2D clothing should work just fine.
Hopefully Roblox brings full 2D clothing support for UGC bundles back in the near future.

To find out more on why Roblox stopped officially supporting 2D clothing for UGC bundles, I refer you to this video: https://www.youtube.com/watch?v=xJn7QfmXINw


Modesty layers

  • After making the modesty layer texture, apply the texture to the UpperTorso as well as the LowerTorso in Blender.

  • This is because the Roblox Studio engine kind of doesn’t use the LowerTorso’s texture, so the UpperTorso needs to have the modesty layer texture as well to map the modesty layer to the LowerTorso.


Importing to studio

After importing to studio you might have to tweak/configure a lot of things.

For Left/ Right-AnkleRigAttachments

  • Set the position values of the Left/ Right-AnkleRigAttachment and its child’s OriginalPosition to 0,0.03 and you should be fine. If not check what number range Roblox studio is giving you when doing the avatar setup.

  • You’ll also need to set all the CageOrigin positions for all the WrapTargets to 0,0,0, unless you want a lot of errors… You can do this by just searching cageorigin= in the explorer search bar and all WrapTargets with the CageOrigin property will pop up.

  • Shift select all of the WrapTargets then set their CageOrigin positions to the value provided step prior.

For NeckRigAttachments

Copy both the NeckRigAttachments in UpperTorso and Head form another model to your corresponding UpperTorso and Head in your imported model.

This other model you’re copying from can be a default model generated by the Rig Builder plugin, but you’ll have to adjust the position and OriginalPosition values of the attachments to a position where the neck looks properly poisitioned in the avatar setup.


3 Likes