The Mutable plugin merges physical assets only based on the bones specified in the Reference Skeletal Mesh, meaning that any additional bones that appear during the compilation process are ignored. Because of this, there are issues with applying physics using animation blueprints. It is necessary to explicitly set an Override Physics Asset inside Rigidbody node of the animation blueprint so that physics works correctly on bones that are not present in the initial reference skeletal mesh.
However, this approach cannot handle multiple different physical assets within a single Mesh Component. If the physical asset were properly merged even to the bones that appear during mesh generation, it would be possible to use a generic animation blueprint for physics that would work for all meshes with simple physics. That means, it would be possible to combine several meshes, each with its own physical asset, into a single mesh component. For example, a mustache, beard, and hairstyle could all be placed into one “Head” mesh.
Because of all this, I have to separate every element that should have physics into its own mesh component and create a separate instance of the animation blueprint for each skeletal mesh, with an explicitly specified Override Physics Asset.
But here I have another problem, I’m not sure if this is just my own clumsiness, but I often get an error when generating a Customizable Object Instance. As a result, I end up with a completely empty character. This often happens when one of the mesh components is supposed to be entirely empty (for example, when a helmet completely hides a hairstyle and a beard).
My question is: is there a chance that in the future it will be possible to merge physical assets taking into account additional bones that wasn’t presented in the reference skeletal mesh? Or at least a fix or an explanation for the error with generation of the Customizable Object Instance. If necessary, I can provide more information about the generation error.
Hi @Anma, Mutable is capable of handling physiscal assets and you should not have problems using it. Can I ask you to create a minimum reproduction case with a couple of simple assets and check if it works? If it doesn’t, please, share it with me and will try to help you out.
It seems I was wrong about the cause of the asset merging problem. Looking at the problem in more detail, now I’m completely confused and don’t understand the cause of the problem.
So right now, inside the head mesh component there are only the Head and the Hairstyle. And in total, there are only three meshes in the mutable object. The situation is very simple:
The Head DOESN’T have a physics asset;
The Hairstyle does have a physics asset;
By choosing this hairstyle, I expect to see this physics asset (or a runtime-merged version of it) inside the generated head mesh, but this is not happening.
If I open the generated mesh in Customizable Object Instance.
I also had cases where the generated mesh didn’t have any physics asset at all, or for some reason the Head contained the physics asset used in the Body, while at the same time the Body contained the physics asset used in the hairstyle, even though I didn’t make any changes to the Customizable Object.
I can create a new project with a few assets and upload it to Google Drive if you need it.
Do you have “Enable Physics Asset Merge” in the root Customizable Object? If not, try un-check it from Head child object and enable it in the root CO. This should work. If it doesn’t, please share.