!!まだまだ絶賛編集途中です!!
UNET
非推奨の昔からあるUnity純正のネットワーク・ライブラリ
特徴
- 24 人を超えるプレイヤーの同期で死亡するらしい
- 非推奨,安定性がない
- SyncListの送信量の限界が最大64K bytes
ピアツーピア(P2P)トポロジーでは一度に 24 人を超えるプレイヤーを同期しようとすると問題が生じることが多いため、25 人以上のプレイヤーに対応するセッションに関しては、専用ゲームサーバー(DGS)トポロジーへの移行が推奨されます。[1]
とUnityも公言しているので,なるべく使わないのが得策.
3に関して,SyncListでパケットサイズもUnit16.MaxValue(64KB)で制限されていたので,最大パケットサイズを大きくして,遅延送信させたとしても,それ以上のパケットを送ること自体ができなさそう.
if (buffer.Length > UInt16.MaxValue)
{
if (LogFilter.logError) { Debug.LogError("NetworkWriter WriteBytes: buffer is too large (" + buffer.Length + ") bytes. The maximum buffer size is 64K bytes."); }
return;
}
Mirror
Mirrorは,有志が開発しているUNETの後継ネットワークライブラリです.
特徴
- 100人以上のプレイヤーの同期ができるらしい(uMMORPG では480人参加をテストしたらしい)
- あああ
作られた経緯
- vis2kさん達(Mirrorの開発者)は、必死でUnityにバグレポートを出したのに、Unityは「仕様です」と返答するだけで、全然修正してくれなかったそう
- UNETのHLAPIは突如オープンソース化されたので、vis2kさんはこのHLAPIのバグを自力で修正しまくり始めました。
- Raknetの上にNetworkViewを増築して、さらに3階にUNETを建て増しした
Unityが後継として作ったMLAPIよりもMirrorの方がよいらしいです[2]
[1] [今、Unityでネットワークマルチプレイ作るのに何を使えばいいのか] (https://soysoftware.sakura.ne.jp/archives/1686)
[2] Unityのネットワーク、即戦力が欲しいならMLAPIよりやっぱMirrorのほうがいいかも 2021年5月20日