Plugin Version: 1.10
Performs interpolation and extrapolation in order to make your objects smooth and more accurate over the network. Highly configurable, only send what you need. Optionally compress floats to further reduce bandwidth. Customizable interpolation and extrapolation settings depending on your game's needs. The full source code is provided so you can see everything with detailed comments!
Supports Windows, Linux, Mac, iOS, Android, HTML5.
Now that it is on your networked object:
Smooth Sync stores a list of network States to interpolate between and then goes into extrapolation during latency spikes.
SmoothSync.setSceneComponentToSync() - Used to set the Transform that you want to sync. If none is set up, it will sync the Actor. Must have one SmoothSync for each Transform that you want to sync.
SmoothSync.teleport() - Used to teleport your objects for situations like respawning so that they don't interpolate. Must be called on owner, or server if there is no owner.
SmoothSync.forceStateSendNextFixedUpdate() - Useful if you have a low send rate but you want to manually send a transform in between the send rate.
SmoothSync.clearBuffer() - You will need to manually call this on all of the object's instances if you change the object's network owner during runtime.
SmoothSync.enableSmoothSync() - Used to enable / disable Smooth Sync.
Don't hesitate to contact us with any problems, questions, or comments. With Love, Noble Whale Studios