コンテンツにスキップ

Unity Multiplayer

Unity multiplayer は cn.indiegp.sdk.unity.multiplayer で提供されます。core package には multiplayer type や socket は含まれません。

  • IGP.Multiplayer: Hosted、Room、Realtime、KCP/UDP、診断、event。Mirror 依存なし。
  • IGP.Multiplayer.Mirror: MIRROR define がある場合だけ compile される任意の transport。

同じ GameObject に IGPRuntimeManagerIGPMultiplayerRuntime を配置し、IGPRuntimeManager.InitializeAsync() を一度だけ呼びます。Room/Player context が有効になると descriptor と KCP/UDP は自動的に開始されます。

KCP は Ready に必須です。raw UDP は任意で、unreliable data を KCP に fallback しません。KCP 切断後は 1s, 2s, 5s, 10s, 30s の間隔で descriptor を再取得します。

Mirror を使う場合は IGPMirrorTransportIGPMultiplayerRuntime を明示的に割り当てます。ClientConnect()ServerStart() は intent のみを保持し、KCP/UDP や Mirror.NetworkManager を起動しません。

Unity のコード例は samples/unity/2022.3.62f3c1/sample/Examples/ にあります。