Top down rotation a.k.a Helldivers

Hello everyone,

I have looked and searched but haven’t found any good solution, so it’s either very easy or very complicated, I’am still begginer in Unreal.

So if you someone can help, this is the problem:

I want to create rotation like this in my project:Let's Play - Helldivers - YouTube
If you can see it consists of:
a) passive movement - player has IDLE to WALK and moves in direction of arrow keys
b) combat movement - player has sides of movement(front, back, left, right) and aims while moving

I made both A and B working, problem happens on TRANSITION between A and B.

Since I’am rotating world rotation of my mesh, I have to set it to 0 in order that my COMBAT to PASSIVE forward rotation ends up being correct(character walking forward and looking forward).

While doing that it happens that in all situations my character snaps to 0 instead of snapping to the new desired rotation.


Moving DOWN and shooting DOWN, ends up in character snaps to 0(UP) and then rotates towards DOWN(180), and if i don’t snap it, then my character will end up running UP(animation) and moving DOWN.

This is my blueprint, so if anyone has any ideas i’d appreciate that a lot since it’s been bugging me for days.


I am playing with topdown prototype atm.
I followed tutorial to setup character animation:
It shows how to do it for third person, but from it i learned basics of animation. IT also shows how to make nice blend anim from Epic’s free anim pack.

When i had that tutorial working (and understood what each step does), i made topdown project, from scratch.
Player pawn is just spectator camera with move, rotate and zoom controls (later i make nice interface for it).
Player avatarts are actually AI pawns that i order directly from player controller. So they can navigate around obstacles, can get focal point or aim at enemy.
They also automatically strafe and move backwards, and its seamless animation (thanks to blend spaces from tutorial).

You are reinventing wheel doing it all manually when there is great system for character animation, and later behavior (like idle movement, turning head towards enemy etc.)

Yeah I did all that, but didn’t help.

Anyway solution was actually very simple :S I just had to substract aiming direction form moving direction to get what i want.

Things are sometimes much simpler then you would imagine :stuck_out_tongue: