How to make a turn animation rotate my character permanently?

I have a character standing idle and want him to turn right, then stand idle again. When I do this, the idle animation re-turns the character to his original orientation, the one he had before the turn animation. How can this be fixed?

What I assume you have is the character with the animation you imported into Unity, dragged into the Hierarchy (your game space).

A solution to this and what I believe is good practice is to put it inside an empty game object as the parent so when you control the parent, the child (character animation) is controlled. Zero out the position of the character model for practice.

Whenever you want to do rotation, tell the ‘parent’ to rotate and the character animation will still play as it is.

Hope this helps :slight_smile:

What I wanted to do was to play a turn-right-90-degrees animation and have my model’s rotation actually changed by 90 degrees. I assumed that this could be done by applying root motion, but it wasn’t working for my model, that’s why I posted this question.

Then, I noticed my model’s animation type was set to “generic”. After changing it to “humanoid”, for some strange -to me- reason, root motion worked as expected and my problem was solved.

Ta-daa!

PS: mods, feel free to delete this question if you want -or keep it, as future reference for noobs like me :slight_smile:

try using: transform.rotation.y += 1; or something like that