When user in Mutable setup uses Skeletal meshes which has [Mesh] sockets defined in the asset (transforms defined in the SKM), then on the output these transforms are not reflected, instead ‘default’ transforms are taken from the Skeleton asset.
Is there any parameter I’m missing to enable or how I can achieve to have desired [Mesh] sockets transforms in the final instance?
Sockets will remain as they are unless you utilize ObjectGroups and the node’s ability to define a socket priority. When you create the node and look to the far bottom you will see the property. A higher priority means it will use the mesh socket instead of what is defined on the skeleton.
Note, you don’t need to use seperate COs to use an ObjectGroup. And the main thing this allows is that say I have a jacket, it can have higher priority than a shirt to modifying the socket position, and the shirt could have a higher priority than the underlying body. This can create a followable structural hierarchy depending on what object groups are being used.
Hmm, I think I found better description of the situation and why it is happening. Also I found some solution for that.
There are two skeletal meshes as sources, sharing the same Skeleton. Mesh A is having some Mesh sockets, Mesh B is not having any Mesh sockets.
They are merged into the same component via the same “Mesh Component” node (via Mesh section array).
[Image Removed]
In this case the Mesh sockets from Mesh A are not reflected on the output. The transforms copy the Skeleton source.
The solution I found is to add the second mesh by “Add To Mesh Component” node. In this case the Mesh A sockets transforms are reflected.
[Image Removed]I wonder if my functionality is just a luck in serialization or not and how I could set priority if multiple SKM I would merge like this?
Your suggestion to define the prioritization by the Group node would not work for this case as I wouldn’t add Mesh B via parametrization.
I would consider to implement some sort of control/definition even lower. Maybe even on the Skeletal Mesh node level? On the other hand one should also consider how to define this for the cases when Data Table would be used as a source of the Skeletal Mesh assets in the setup.
Yes, you are highlighting the limitation that I was indicating. Also your suggestions and following conclusions are correct that we need to consider where we define this prioritization as its not current standard approach but still supported. This would be part of the reason that we use the Object Groups for this definition. In the screenshot below I show how you can use an ObjectGroup and ChildObject in the same graph without prioritization to still get access to promoting mesh sockets.
[Image Removed]Note the blue boxes indicate the type of outcome you are looking for for while the green boxes show how you can have the priority socket without the structure being parameterized.
In terms of your suggestions, I will raise this to the team as a feature request though.