Skip to content

Unity networking library extension for PUN/UNET/Mirror with tick-based state syncs for transforms and more. Specializes in syncing transforms very smoothly and compactly.

moto2002/NetworkSyncTransform

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Header

Network Sync Transform

NST Free Current Release - Unity Package Download

With the deprecation of UNET and a LOT of breaking changes currently happening with UNITY 2019, NST likely will NOT be officially supported past Unity 2018.4. Currently it should be working in 2019 for PUN and Mirror, but I make no promises on that for the long-term.

All new development work is going into this library:

Simple Network Sync - Unity Asset Store

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.

Supports:

  • 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.

Current Work

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 Free Current Release - Unity Package Download

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.

NST Animator Add-on - Unity Asset Store

NST Elements Add-on - Unity Asset Store

NST Rewind Add-on - Unity Asset Store

Transform Crusher PRO Upgrade on Unity Asset Store

Offers bit level control of the compression settings, rather than just the presets.

Transform Crusher PRO - Unity Asset Store

Documentation

Network Sync Transform (NST) Documentation

Contact

davincarten@gmail.com

Donate

Paypal Donations

Paypal donations are always welcome!

About

Unity networking library extension for PUN/UNET/Mirror with tick-based state syncs for transforms and more. Specializes in syncing transforms very smoothly and compactly.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%