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…
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.
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.
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.
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.
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.