Tongyu Zhou, March 2022
Background
Mirror is an open-source, high level networking library for Unity that is optimized for ease of use and probability of success. It was specifically created for indie games and small MMOs. Originally, it was a fork of Unity's UNet HLAPI, which has since become deprecated, and thus migrating from this old Unity framework is is easy. While the transport layer supports any kind of network topology, it mainly focuses on supporting client-server topology. It does allow a participant to be both a client and a server at the same time, so no dedicated server process is required.
Community
As one of the most popular networking solutions alongside Photon PUN, Mirror has a dedicated Discord of 12,000 members (this is the largest Discord in comparison to other competing solutions) and a forum. Several video-based tutorial series can also be found here:
Since Mirror is open-source, developers are also encouraged to make active contributions.
A quick-start project that you can immediately download and run can also be found here.
Pricing
Mirror is free and can be downloaded from the Unity Asset Store. Funding for this plugin is provided through donations on their Github, where a subscription model is employed (with tiers of $5, $20, $200, and $500). Each increasing tier places you higher on the priority queue for Mirror Team support.
Features
Server and client in one architecture
Message handlers
General purpose high performance serialization
Distributed object management
State synchronization
SyncVar, RPCs
Transports:
KCP: reliable UDP
Telepathy: cross platform TCP
LiteNetLib: UDP
Ignorance: ENET UDP
Simple Websockets: Websockets
FizzySteam: SteamNetwork
Epic Transport: Free Relay