Set actor rotation is laggy when replicate movement is activated

i don’t know why this is happening D:

still need help with this D:

Looks like you’re using a Character Pawn, which replicates rotation and location changes automagically (and really smoothly!) without RPCs such as “ServerMoveThis” or “MulticastRotateThat” being involved.Try removing any RPCs that alter location or rotation, but keep Replicate Movement on, and see if that improves things.

I only use the set actor rotation node to do the rotation. I want the rotation to be smooth on the client. currently, the client gets the rotation from the server because it’s replicating movement and I don’t know how to fix it D:

Hello, im using 4.21 and having the exact same problem, have you found the solution ?

For Replicated Character pawns, don’t use SetActorRotation; instead use Set Control Rotation, as this feeds into the Character class’ network smoothing and prediction algorithms.

I want the character rotation to be separate from control rotation. Control rotation is the rotation of the camera, I don’t want the actor rotation to be the same as the camera if that makes sense

Hmm. I’m not sure how to separate those two, but I know character or spring arm has an option of whether to use control rotation. I wonder if it would work to uncheck the checkbox for use control rotation in the character or spring arm, and then use blueprint GetControlRotation to set it. Maybe the replication goes both ways and sets control rotation too? I guess we’d have to explore the C++ code to know for sure :\

Imgur: The magic of the Internet this works for me

Imgur: The magic of the Internet this fixed the my issue, no idea how.

it smoothes out the latency (during server-client-communication) between source rotation and target rotation by using delta seconds and interpolation. thanks for sharing this example:)