C++幼女先輩

プログラミング成分多め

UnityのマルチプレイヤーネットワークAPIについて

種類

UNet

UNITYの5.1から入ったおなじみのAPI
こうレイヤーのHLAPIと低レイヤー LLAPIがある
が、これは間もなく廃止予定だ

blogs.unity3d.com

Multiplayer

次世代のネットワークAPI
だが、フォーラムによると、まだ機能的にはしょぼいらしい
2021年にはUnetよりはるかに便利になっている予定だそうだが、かなり先だ
ECSやJobSystemを使い、マルチスレッドで ある程度アンマネージドで高速実行するようだ

現在はどうやらGithubにソースがあり、それを使うようだ
github.com

Photon等のmBaaS

各社独自のサービス展開をしている

ではどうするのがいいのか?

Unetは廃止予定ではあるが、今いまは使うしかないと思う
もちろん私のような人柱は Githubから落として新機能を使ってもいい

Unetでは高レベルのHLAPIと低レベルのLLAPIがあるが、フォーラムを読んでるかぎりでは
UnetのHLAPIから New Multiplayerへの自動変換を予定しているらしい
LLAPIからの変換は困難であきらめた雰囲気がある
また、New Multiplayerは HLAPIと似たインタフェースにするっぽいので
今はUnetのHLAPIで書いておけば問題がなさそうに感じる

mBaaSを使う選択肢は当然大いにある
HLAPIであっても、かなり面倒なコードを書く必要があるが、mBaaSを使えばそれが圧倒的に楽になる