Change MeshPart MeshId Workaround

I am have a character model I imported with FBX. I want to be able to swap out the body parts and features by changing the meshes of the different parts. Much to my dismay, you can’t change MeshPart MeshIds!

I heard that SpecialMeshes can have their IDs changed, but that breaks the Motor6Ds from my model. Does anyone have any suggestions for workarounds to this issue?

Two suggestions:

1- Import all of your body parts as MeshParts and store them under ReplicatedStorage and swap them as needed, or,
2- Make your rig work with SpecialMeshes
AFAIK, there aren’t any other ways unfortunately.

Also want to ensure that if your rig is R15, you use :ReplaceBodyPartR15

https://developer.roblox.com/en-us/api-reference/function/Humanoid/ReplaceBodyPartR15

Thank you for your suggestion!! I think that the first one is going to be my only option because I don’t think SpecialMeshes support mesh deformity. For anyone using this thread for reference, here is what I did:

  1. Placed all the replacement parts into folders in ReplicatedStorage.
  2. Used a script to do the following:
  • Create a new body part
  • Change the CFrame to that of the old body part
  • Parent the new body part to the model
  • Reattach the Motor6Ds to the new part and parent it to the new part
  • Rename the new body part to the same name as the old body part
  • Destroy the old part

That seemed to keep everything in order!

1 Like

Yeah, they don’t unfortunately, just to confirm.

You can use this plugin I found whilst I encountered a similar issue with converting large directories of head meshes into meshparts.
Mesh2Part - Creator Marketplace (roblox.com)