How are prodcedural animations created in games like Phantom forces?

In PF when you walk it plays a walk animation but if you go sideways it blends walk with a shove movement.
Are these just blended roblox animationtracks or is it hardcore weld cframing?

If its cframing, how can they replicate it on an FE server smoothly?
Just feels like I’ve missed some critical animation trick here…

4 Likes

I think It’s c-frame. But I might be mistaken I’m currently new to the animation/rigging side of Roblox and ready to learn so if I’m wrong please correct. I don’t think so but I might be. From John.

1 Like

I’m pretty sure it’s cframing but idk.

Idk how they replicate but I replicate by sending information to the server then distributing that information to all clients or nearby players and then handle cframing myself and other players on the client.

1 Like

PF probably doesn’t use any animation objects.

They most likely use a character rig and then solve the arms and legs with an IK solver, and then apply the arms and legs of the character to where the forearms and shins would be to represent flowing steps and stuff.

The best part about this method of animating is that you don’t have to do anything super critical or direct with the animations or limbs. It all gets solved for you and all you need to specify is the position that the rig is trying to reach for. So if you have a humanoid and 4 limbs, all you need to solve is where those 4 limbs are trying to reach for, and the IK solver will do the rest for you.

Use cases for this method would be:

  1. Those super smooth flowing animations you see
  2. Foot planting
6 Likes

It is definitely CFrame as there are no ways of doing it without CFrame. Like what Locard said, they’re probably using IK.

A common method of having smooth animations is doing all of the visual on each of the clients. For example, the server only the tells the clients what direction a character is moving in, and each of the clients then creates their own animations from that simple value.

5 Likes

This is how I replicate procedural animations in my game. If you’re dealing with a lot of players and are worried about any possible performance implications of calculating animations for every single player, you can scale the rate at which you calculate the procedural animations for each player based on their distance from the camera, or simply not calculate them at all if they’re far enough away.

1 Like