Hi,
Straight to the point: how do I get 2 3d models to interact?
E.g. in Assassin’s Creed, when you go up behind a guard and assassinate him, an animation is played, showing the guard being assassinated by our assassin.
E.g. 2 in GTA, you aim a gun and fire. The gun isn’t part of our character. It was modeled separately and programmed to interact with our player.
E.g. 3 in watch dogs, we get to go inside cars and drive them. The car’s doors are shown opening and our character gets inside. Again, 2 objects interacted in 1 animation.
How do I achieve this in Unity? Any links to useful tutorials?
For car & character you animate objects separately and synchronize the animations in Unity (start them both at the right time).
For objects the player picks up, in FPSs, you usually switch your player model with one that has the object in hand. You should have separate animations for the new model, for shooting, reloading, whatever. Here is a small tutorial for using IK to easily animate the player with an object. You could use Mecanim to combine the shooting, etc animation with the walking, runing, etc.
Another way to go is parent an empty game object to your character (in Unity) where you would want your weapon to go (different game objects for different weapons). You would then parent your gun to that objects and it would then be synchronized with the player. You still have to animate the character for shooting and the rest, but you don’t do it with the gun in hand.