Network Sync Transform
Networking HLAPI for Photon PUN/PUN2 , UNet and Mirror. This asset incorporates a circular buffer based transform sync engine, creating very smooth and stable movement replication - even in lossy/jittery real-world network conditions.
Additionally, the circular buffer reduces data rates by packaging all outgoing data onto regular network ticks. The bitstream is accessible as well, allowing for additional data to piggyback on these packets - such as health, emotes, timers, etc - rather than uncompressed and adhoc with RPCs/Syncvars.
- EXTREMELY low network usage compared to the UNET/PUN transform sync components, with a range of compression and culling options.
- Smart Interpolation with automatic handling of rigidbodies and non-rigidbodies.
- Extrapolation options for how buffer under-runs (network hangups) are handled.
- Buffered frames to reduce and eliminate hitching from network loss and jitter.
- Server initiated teleport and auto-teleport.
- Bit-level control over nearly every aspect of the packets created and the resulting packet sizes.
- Sample components and scenes demonstrating networked handling of health, movement, weapon fire, etc.
- Custom Messages that allow user data to piggyback on sync ticks, such as weapon fire or object throws.
- Rewind Add-on available on the Unity Store, with full recreation of colliders on gameobjects, including synced children objects.
- Element Add-on available on the Asset Store, for syncing child turrets, arms, heads, etc.
- Animator Add-on available on the Asset Store for syncing the unity Animator using NST’s buffer and compression.
I am trying to avoid making any additions in functionality to NST, as I am working on a totally Server Authority tick based replacement for the entire system using everything I learned making NST. However I am pulling parts from NST that I liked (Like Transform Crusher was separated out in this process), and as I reuse those in the new project - any improvements and/or changes to the components are fed back into NST to keep my library unified and to avoid a bunch of forks. This means NST while not expanding, is being maintained. I will continue to maintain it until Unity throws a REALLY breaking change at it that is too much work to adapt the project to. The 2017 LTS likely will have indefinite support.
Free NST Core Download
You are welcome to use this library for games, however scripts/components not explicity marked with MIT licenses may not sold be part of assets libraries.
NST Add-ons on Unity Asset Store
These are not required, but they can be purchased on the asset store if you would like to help contribute to this project, or just desire the functionality and would rather not write it yourself.
Transform Crusher PRO Upgrade on Unity Asset Store
Offers bit level control of the compression settings, rather than just the presets.
Paypal donations are always welcome!