Download

Multiple skeletal meshes interacting

Hello. I am new to Unreal and am about to begin creating animations. Is it possible to set up two skeletal meshes so that they animate together? I want to make my player character velociraptor able to jump onto NPC prey animals and trigger different synchronized animations between the two depending on the angle of attack/etc. Or, say, I want to make an animation wherein one man grabs another and karate throws him. You get the idea. Is this something Unreal can do?

If so, can anyone point me towards any documentation about how to set up said animations?

Thanks!

It can be done; I’ve done it. But it’s not EASY.

I allow my player to grab enemies and swing them around like a weapon. What I do is I design these animations in such a way that the enemy’s root is set to the same position as the player root, and animate him by moving his other bones away from it.

When I want to play this animation, I disable collision between the player and enemy temporarily, and snap the enemy actor’s location to be identical to the player’s (so their root bones are in the same place, as when I designed the anims), and then use a Cast To trigger the animation on both the enemy and the player at the same time. This works for me because I already know where the enemy is relative to the player when I START these anims (in a held position) so doing an instantaneous location-snapping doesn’t look out of place. But my case is unique to that setup, where the enemy can snap from an arm-tracking held position from the initial grabbto a capsule-root position since I know the pose that will be in play when the melee attack is triggered.

For you, the issue would be one of blending; when jumping to the enemy, you’d have a hard time ensuring that the player lands in a way that places him EXACTLY where he needs to be relative to the enemy’s capsule. You’d need to do some sort of location setting to snap the enemy and player to a predetermined position relative to one another before playing the synchronous animations, and doing so would probably look a bit wonky since the player might land slightly left or right of the enemy and he would be suddenly snapped over a few units to keep his root where the animation design demands.

This isn’t something specific to UE4; conceptually, it’s difficult to imagine guaranteeing a player launching from any position would always connect with the enemy in the exact same way, and it would be unfeasible to design all of the necessary anims for each possible case, so somewhere along the line you’ll either have to deal with animations that aren’t perfectly aligned geometrically or else incur a small amount of unnatural location snapping/lerping as the animation starts to guarantee that the actors wind up in the correct position relative to one another.