Character Motor jerky on platform

When I put a FPS character using the character motor onto a platform and try to move the platform using non physics, the characters view is very jerky. When I uncheck fixed update in the character motor script settings, it stops being jerky.

However, im building a multiplayer game with two players on a ship. One player controls the ship and the other runs around on deck. The characters view on the deck is very jerky, even with the use fixed update box unchecked. The player who is controlling the ship sends a RPC out that updates the position and rotation of the ship for the other players. How can I fix the jerkiness of the characters view now?

Thanks

Has anyone come across this?

I really don’t know whats causing this. For some reason unchecking fixed update on the character motor fixes the jerkyness issue if the platform they are standing on is being controlled on their computer. Although if the platform is being controlled by another player with a RPC its still jerky.

Is there no way for a character controller using the character motor to have smooth movement when standing on a platform which is being moved by another player via RPC?

anyone?

I don’t fully understand what your trying to do but keep in mind that if you send someting over the network ( rpc ), it will not be smooth on the other end. So you need to compensate that through lag compensation.

How does one lag compensate? I dont see any other way to update the rotation and position over the network accept using a RPC. I could just use a networkView but the drivers of the ship may change so there wont be any defined owner.

The networking example on unity’s resources website has an example, it’s not the best but it will get you started.

This may or may not help you but I just had an annoying jerky/stuttering problem that I eventually linked to my camera. I had the character moving using code in Update() and the camera following based on code in its own script Update(). The correct way to do this is call the camera after the object using LateUpdate() on the camera.

1 Like

That worked, thanks! I set the Update function in the character motor script to LateUpdate. The platform sends a RPC using Update. Now when one player is on the platform or ship, their view does not shake like mad. Thanks again, I was stuck on that for almost a week.

Now I need to figure out why is it when one person gets out of the drivers seat, it flings them off the ship or brings the whole ship down. But that’s for another thread.

That’s great, glad I could contribute something back to the forum for once :slight_smile: It was bugging the hell out of me too.