Mirror Networking for Unity
Mirror is the most compatible direct replacement for the deprecated Unity Networking API.
Mirror has nearly all of the components and features from UNet, making networking easy, concise and maintainable, whether you're starting from scratch or converting an existing project. We even have a Migration Tool to do most of the work for you!
Built to support games of any scale, from LAN party games to dedicated high-volume authoritative servers running hundreds of players, Mirror is the core networking solution for uMMORPG, uSurvival, Cubica, and more!
uMMORPG was possible with <6000 lines of code. We needed a networking library that allows us to launch our games, period!
- Full Source included for debugging convenience
- Several working examples included
- Active Discord for prompt support
- Requires Unity 2018.3.6+ and Runtime .Net 4.x (default in Unity 2019) and .Net 2.0 Compatibility is recommended
- Alpha / Beta Unity versions cannot be supported
Multiple Transports Available:
- TCP (Telepathy and Apathy and Booster)
- UDP (ENet and LiteNetLib)
- WebGL (Secure Web Sockets)
- Steam (Steamworks.Net) and (FacePunch)
- Multiplexer (Multiplexer)
- Fallback (Fallback)
We've developed a List Server where game servers can register and clients can connect to find those servers to play on them.
Key Features & Components:
- Transports are interchangeable components
- Additive Scene handling
- Single and separated Unity projects supported
- Network Authenticators to manage access to your game
- Network Discovery to easily connect LAN players to a LAN Server or Host
- Network Manager and HUD
- Network Room Manager and Room Player
- Network Identity
- Network Transform to sync position, rotation, and scale with interpolation
- Network Animator with 64 parameters
- Network Proximity Checker to help with Area of Interest
- Network Scene Checker to islolate players and networked objects to Additive scene instances
- Network Match Checker to islolate players and networked objects by Network Visibility
- SyncVar, SyncList, SyncEvent, SyncDictionary, and SyncHashSet