socket lagging behind animation?

I having some issues with an IK setup. The IK is for the player’s hand and is set to follow a socket on the player’s weapon. It mostly works, but when the weapon moves suddenly (such as when a player quickly changes aim), the IK seems to run one or two frames behind the animation. The IK I’m using doesn’t do any filtering, so I don’t think it’s the IK doing it. So I’m wondering if there is a possibility of the socket running behind the animation.

I think I found what is going on, but I’m not sure what to do about it. What seems to be happening is that the IK solver is getting old data for the target socket. This seems to be happening because the socket position is fetched and saved in the event graph during the BlueprintUpdateAnimation event. The animation graph then gets called and applies the animations and blending to the skeleton along with the IK. The problem is the Animation Graph has moved the socket after the BlueprintUpdateAnimation event, so the saved socket location is no longer current.

So the question is: “How do I get the location of the socket -after- all the blending has been applied in the Anim Graph?”

1 Like