Im in the process of creating 2 chracters that can swap parts around. Each character is made of 6 pieces: Head, body, 2 legs, 2 arms. I knocked up a quick test of simple blocks and got them to animate with the master pose node and using the same skeleton. So I figured i would try on my characters. I made one and the limbs of the other. I decided to test before I sunk any more time in. I bound all the parts to the skeleton as the previous test. But I noticed an issue when moving the limbs, character A’s default limbs animated fine since the skeleton was his, the bodies are going to be the master pose componet. But when i checked Character B’s limbs, they did not animate properly. Given the design o the characters, I dont need any deformation since they are robots made of metal so I could move the bone around with no issue. Except character A’s limbs are now off. This is a problem .
Given the method I am using the only work around I can think of is making sure the limbs moving parts match the skeleton Im binding them to exactly. The problem with that is that I have to compromise the designs to fit the skeleton. The idea behind the characters and subsequent characters of that world is a survival of the fittest mentality. Robots scavenge for parts constantly and will fight one another over said parts to ugrade themselves. The winner of said fight will cherry pick the best parts/limbs from the other robot usually leaving their obsollete parts behind.
Now some changes will need to be made to certian part when using it on anothe bot but I was hoping to just get away with scalling that part so the bot its attacthed to can using it properly. I want each limb/part to stay as close as it can to its original.
Now is what Im trying to do even possible? Is there a better way to go about it so each limb can animate as it should like eg. the same arm moving the same way on two different characters? Is it possible to give each part its own skeletal mesh and combine them in unreal but still have them animate together? I
I dont think what i am attempting is impossible, but there has to be a better method.