- Home /
How to transition animations that move the player model?
Hi, we are a group of people making a game for a school project! It's a grid based stealth game.
As one of our features, the player can climb over walls. This is accompanied by a little animation of the player tossing a grappling hook, climbing over the wall and then dropping down on the other side. Since this animation moves the player model from it's origin, this creates problems at the end.
So what i try to do is have an animation event ("hookDone") at the end of the animation and then move the character at this event and immediately Play the idle animation. Like this:
void Update(){
if (climbing) {
U_player.anim.SetBool("Climbing", true);
if(hookDone){
U_player.anim.SetBool("Climbing", false);
hookDone = false;
climbing = false;
U_player.anim.Play("Player Idle");
U_player.gridPosition = climbToTile.GridPosition;
U_player.transform.position = new Vector3(climbToTile.transform.position.x, 1.5f, climbToTile.transform.position.z);
}
}
}
But the end of the animation there is an ugly SNAP of the player first moving forward a couple of meters and then moving back. I've been trying to sync this up by removing the transitions, or moving the event back and forth, but whatever i do it just ends up ugly... Either it snaps BACK through the wall, or forward a couple of spaces before ending up on the same square.
If you have trouble visualizing it here is an extremely ugly movie detailing the attached.
Note, the little circle is the center of the character model in the animation view
How do i solve this? Is has to be a way to seamlessly move the character with these kinds of animations right?
Your answer

Follow this Question
Related Questions
Animation transition incorrectly rotates player 360 degrees? 0 Answers
HUD animation with game in background 0 Answers
Efficient way to instantiate a sprite that plays an animation then destroys itself? (3d space) 1 Answer
Is there a way to turn on a transitions hasExitTime on/off through code? 1 Answer
Create animation transitions via script. 0 Answers