MLAPI 0.1.0 / MLAPI Community Contributions を git URL を通してインストールをする

検証環境

  • Unity 2020.3.0f1
  • MLAPI v0.1.0
  • MLAPI Community Contributions v12

MLAPI v0.1.0

MLAPI 0.1.0 リリースノートの際にも説明しましたが MLAPI を git URL で Install する際は以下を利用します.

https://github.com/Unity-Technologies/com.unity.multiplayer.mlapi.git?path=/com.unity.multiplayer.mlapi

f:id:xrdnk:20210324082908p:plain

MLAPI Community Contributions v12

コミュニティから提供されているMLAPIの拡張機能が含まれています.インストールは任意となります.
現時点ではv12が最新版で,Transports や Extensions がコンテンツ内容になっています.

Transports

デフォルトでは MLAPI の Transport は UnetTransport を利用しています.
UnetTransport 以外を選択する場合にEnet,LiteNetLib,Ruffles,SteamP2Pを選択できます.
WebSocket版は最新版では少しissueがあるため,現在未対応のようです.

f:id:xrdnk:20210324102042p:plain

旧 MLAPI では以下のような MLAPI Installer が存在し,それで Transports のインストールをしていました.

f:id:xrdnk:20210323231243p:plain

これからは MLAPI Community Contributions リポジトリを通してインストールしていく感じのようです.

github.com

各々の Transport をgit URL で Install する際は以下を利用します.
(ちなみにドキュメントの方ではURLが誤っていて,.gitがついてないです.以下は正しいです)

f:id:xrdnk:20210323230627p:plain

  • ENET

https://github.com/Unity-Technologies/mlapi-community-contributions.git?path=/Transports/com.mlapi.contrib.transport.enet

  • LiteNetLib

https://github.com/Unity-Technologies/mlapi-community-contributions.git?path=/Transports/com.mlapi.contrib.transport.litenetlib

  • Ruffles

https://github.com/Unity-Technologies/mlapi-community-contributions.git?path=Transports/com.mlapi.contrib.transport.ruffles

  • SteamP2P

https://github.com/Unity-Technologies/mlapi-community-contributions.git?path=Transports/com.mlapi.contrib.transport.steamp2p

Template もあることから察するに,このテンプレートに則れば,オレオレTransportを実装することも出来そうです.

github.com

Extensions

MLAPI の拡張機能が含まれています.git URL で Install する際は以下を利用します.

https://github.com/Unity-Technologies/mlapi-community-contributions.git?path=/com.mlapi.contrib.extensions

f:id:xrdnk:20210323224943p:plain

LagCompensation,NetworkManagerHud,NetworkObjectPool が含まれています.
MLAPIをこれから始める方は一応こちらはインストールした方がよくて,
NetworkManagerを持つGameObjectにNetworkManagerHudもアタッチしてみてください.
Play Mode にすると左上に以下のHUDが表示されるので,接続処理のためのボタンを作成する手間が省けます.
f:id:xrdnk:20210323223256p:plain