I am just curious as to how in many games (namely games like arkham asylum/city, manhunt, hitman) do they make it so that your character can "grab" a character in front of you and do stuff to them. I know this may sound very confusing but for an example go to youtube and search "hitman executions", and the first video is an example of what i'm asking.

Basically I'm wondering how they make your model dynamically interact with whatever other model you come across, so in hitman when you come up behind some one with the fibre wire you strangle the other character or if you have the anesthetic you come up behind some person and put your hand over there mouth while they struggle and slowly go to the floor where you lay them down. I am confused as to whether it was animated to use two models using specific bone/skeletal identifiers, if it is just two completely separate animations that are played at the correct time to make it look like they are actually interacting or something else all together.

I am not an animator so i assume most of what i just said is not right but i hope that some one can understand what i mean and provide an answer.

PS) I am a programmer and I am in the process of building a hitmanesque game, just because i love that style of game and I want to increase my skills on something fun, so if you do know what i'm talking about have some examples with involving both models and programming (i use c++ and mainly Ogre3D at the moment but i am getting into unity and XNA) i would greatly appreciate it.



1 Answer 1


I suspect they're synced animations, since that would under most circumstances (i.e. where characters are on the same floor level) be the easiest to implement. You can see that the Hitman animations are actually not particularly well synced, even so (swordstick scene). It was already a fairly revolutionary game for it's time so I think players were willing to overlook small inaccuracies; gamers I knew at the time certainly didn't complain.

Aside from that, there are some pretty amazing physically driven solutions these days for character animation, eg. Euphoria and Rune Skovbo Johansen's Locomotion system for Unity, to name but a couple. In Euphoria, you can see from their videos the degree of physical realism is insane. That system was used for GTA 4, Red Dead Redemption, and Star Wars: The Force Unleashed. There's no doubt it could pull off the example you gave, with ease. It also hints at the amount of development effort that goes into reactive animation.

It would be perhaps too time-consuming for an individual developer to do more than the sync'ed animations approach, and even that can have it's problems: characters at different heights, for example, you might need to bend their torso to make the attack on the other character, but that can have its own problems (eg. when strangling / slitting throats), such as if the angle is too acute. I guess one solution to that might be to have the character bend at the knees slightly, in order to get an even torso height with his victim. Bit like lining up for a golf shot, old chap.

  • \$\begingroup\$ Thank you Nick for the info. I suspected they were just synchronized animations, that should work fine for my needs as my characters (when you can "execute" them anyway) will always be on the same level as you. \$\endgroup\$
    – Richard
    Nov 20, 2011 at 4:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .