Download

Bone rotation jitter after aim offset + transform bone

I posted this on answerhub but I feel I might get replies faster here, so here goes…

I’ve been trying to make an animation based aiming system for first person perspective and so far it has gone pretty well. Basically I’m setting the world space rotation of the bone that holds the gun, to what the player rotation is. This way I can get the weapon pointed towards the direction I want.

To make the aiming visually more pleasing, I use aim offsetting to bend the whole body first in the anim graph, see here: http://i.imgur.com/lXbSo73.png

Only after that I set the precise bone rotation to match the camera direction (in the pic the variable name is muzzle dir).

The problem is, that if I use the aim offset blending before doing the precise bone transform, the weapon randomly jitters in the player hand:

https://youtu.be/9ZKH7_KLOBc

If I remove the aim offset blending from the anim graph, the jittering goes away. It seems like some weird frame sync problem.

My end goal is to make a free aim system similar to what is in ArmA games, and to do that I need animation driven aiming. I can’t just trace from the camera to do that, I need to spawn a physical bullet at the weapon muzzle.

My question is: what is causing that jitter? Can anything be done to it?

So, I haven’t been able to fix this.
It seems that all skeletal meshes wobble and jitter a bit when rotated. I tested this by using the FPS sample character and removing anims from the first person hands. After that I moved the camera so that I could see the hands more closely. The wobbling was there even though the skel mesh had no animation assigned at all.

Is this just due to precision errors or what? It’s kinda jarring.

I think I figured out the problem…

It’s due to my character being too far away from the world origin. Is there any way to improve precision? The distance was only 3 km.

Bump. It has been few months now and I haven’t figured out how to fix it. On answerhub folk have suggested taking a look at ShooterGame project, but it suffers from the same problem: https://www.youtube.com/watch?v=Qkgju_7HZiA
I’ve read that the game Squad is also suffering from this issue due to their realistically sized big maps.

This happens even when you just attach something to the pawn, so I guess it’s not exactly an animation problem. But still, any help is appreciated.

Any new developments on this? I’m definitely interested in a solution as well.

This should be fixed if/when multiplayer compatible world origin shifting is integrated into engine: https://github.com/EpicGames/UnrealEngine/pull/2359

They might be different issues then. I get the jitter even withing a meter of the map’s origin.