SetMasterPoseComponent: slave with extra bones (.Williams)

The problem that I’m having is the same as these two threads:

I am trying to use SetMasterPoseComponent to set up a modular cosmetic items system. Using this system, players will be able to customize the clothing that their character is wearing. Everything works fine on regular clothing.

The problem that I am experiencing arises when I try to use SetMasterPoseComponent on a piece of clothing that has MORE bones than the master. I still set the asset to match that of the character on import. I can still preview the animations that are targeted to that and they look fine. However, as soon as SetMasterPoseComponent is called, every vert that is influenced by the extra bones gets stretched out to the root joint of the .

I’m posting a new thread because the solution for the two threads I linked above was to remove the extra bones. This solution will not work for me, however. The example piece of clothing that I am having this issue on is a simple loincloth. The loincloth covers the pelvis region of the character, and doesn’t require any complicated skinning. I want the flap that is hanging from the front of the loincloth to be able to simulate physics. This is just an example of what I want the extra bones for. The best solution for me would be to find a way to make Unreal accept slaves that have extra joints. I want to be able to have any number of clothing assets that can both be bound to the animation AND simulating physics in certain areas (scarf, tassels, etc.). The best way to do that for my art pipeline would be having the freedom to append joints onto the existing character and have those joints simulate the physics. These two photos are of the master and slave joint hierarchies, respectively:

100215-masterhierarchy.png

100199-clothinghierarchy.png

As you can see, the master has a pretty standard skeletal hierarchy. To make it, I simply used the default settings of the Epic A.R.T. The slave shares the same PLUS a chain of extra joints starting at the “anchor” joint. That chain of joints is what is affected by this SetMasterPoseComponent issue.

Based on others who have had this same issue, I tried weighting spine_01, thigh_l, and thigh_r to the mesh of the loincloth to see if that would un-interrupt the hierarchy. According to Epic staff, the gap in the hierarchy is what is causing this problem. Unfortunately, adding the extra joint influences did not solve the problem.

I have also tried assigning minuscule weights to every joint in the hierarchy but I was unable to get a conclusive result from that because the weights were too small for Persona to register as being “weighted” to the mesh.

I also tried removing all of the unweighted joints from the slave’s skeletal hierarchy before importing to unreal, but this had the same result as my previous attempts.

I recognize that I could have a separate skeletal mesh that I attach to the base of the loincloth. This may be what I have to do in the end, but I would really prefer to find a way to make SetMasterPoseComponent work out of the box on this.

Any help would be super appreciated :slight_smile:

Hey Arjun,

I saw your response in the other post.

You didn’t get lost. I’m working on this right now, but I may not be finished investigating until we get back in the office on Monday. Thank you for your patience.

Thank you! So sorry for spamming you :confused:

Hey Arjun,

Thanks for your patience on this one. I’ve tested your issue and entered UE-34182.

For this specific asset that you’ve sent, however, only one of the skinned bones for the loin cloth is part of the master mesh. In this case, I would instead remove the other bones from the loin cloth, set the root (pelvis) to the origin, then use it as an attachment instead.

When you say “use it as an attachment” you mean basically just attach the physics-simulating parts as a separate object? For the loincloth, basically just making the diaper part the slave with no extra bones then manually attach (in a blueprint or runtime) the physics-simulating flap?

I suspected that this might be the case. It’s a little unfortunate but oh well. I want to do this method instead of APEX though because my game has a very simple/non-photo-realistic art style so the cosmetic items need not be visually accurate. And I’m assuming that the overhead on APEX would be greater.

I guess it’s not too bad to separate the physics-simulating parts of the mesh from the rest of the mesh…just another step in the art pipeline ¯_(ツ)_/¯

Thanks for taking a look at my issue ! I very much appreciate it.

We also have Poseable meshes, not sure why I forgot to mention it. Create a poseable mesh component, assign the loin cloth skel mesh, then use the “Copy Pose from Skeletal Component” Node on tick. It’s not really usable for anything with physics, but could be useful if you have any accessories/clothing that don’t use physics.

Ah thanks. Seems like poseable meshes are a different solution to the same goal of having interchangeable cosmetic items. I’m pretty happy with SetMasterPoseComponent aside from this bug that we’ve been discussing.

I think I’ll probably run with SetMasterPoseComponent for now, treating any physics-simulating parts as separate objects that need to be attached manually at some point. I’m guessing since it’s not a majorly blocking bug that this will be a lower priority fix so I better adopt a different workflow anyway :slight_smile:

Thanks so much ! I’ll mark this as Solved, hopefully it can help anybody who has this same issue in the future.

Since a lot of games work that way, I think this could be a new feature in the future - -
there will always be someone encounter this issue

Hi,

We are currently encouraging people to use Copy Pose (as mentioned below) instead of SetMasterPoseComponent. In this case it’s also recommended to use a separate skeletal mesh as an attachment.

Is this still being worked on as a bug, because I also would like to implement something like this, with skeletal meshes driven by MPC that contain extended child bones beyond those in the master . Thanks.

Oh.

that’s disappointing.

is the Copy Pose still recommended instead of masterpose? at 2019.07.07

1 Like