Netcode for Entities input delay and Cinemachine camera jittering on predicted ghost

Hi, I am currently building a racing game using DOTS and Netcode for entities where i use Dots for the physics part and GameObjects for the visual part and i came across two challenges

Local machine input

Is there a way for me to have my local ghost immediately consume my inputs on the local machine (and not wait for the server to send the input) then reposition the ghost if the transform of the local ghost and that of the server are too far apart?

Camera jitter

When i use Cinemachine’s xyz damping’s the camera jitters a lot (probably because of the resimulation) so is there a walkaround for me to have a smooth camera while my vehicle moves?

1 Like

Is there a way for me to have my local ghost immediately consume my inputs on the local machine (and not wait for the server to send the input) then reposition the ghost if the transform of the local ghost and that of the server are too far apart?

For this, you’ll need to use Commands and Prediction. You can read more about them here:
Prediction: Prediction | Netcode for Entities | 1.1.0-pre.3
Commands: Command stream | Netcode for Entities | 1.1.0-pre.3

When i use Cinemachine’s xyz damping’s the camera jitters a lot (probably because of the resimulation) so is there a walkaround for me to have a smooth camera while my vehicle moves?

A few things to check would be:

  • Is the vehicle rigidbody using interpolation?
  • Is cinemachine’s update method set to LateUpdate?
  • Is cinemachine’s target copying the entity’s LocalToWorld (not LocalTransform) every LateUpdate?