Perl日記

PerlとかRubyとかPHPとかPythonとか

MLAPI その1

mlapi.network


Unity でオンラインマルチプレーヤのやつのメモ。

Releases · MidLevel/MLAPI · GitHub
から「MLAPI.unitypackage」をダウンロードして Unity にインポート。

空の GameObject の NetworkingManager を作って、「NetworkingManager」と「Unet Transport」をアタッチ。
「Network Transport」のところに自分自身のオブジェクトを設定。

[MLAPI] There is no NetworkedPrefab marked as a PlayerPrefab

の警告が出るので、「Create Player Prefab」と「Force Same Prefabs」のチェックを外す。

MLAPI の Host の起動・停止

Host として起動させると、Server・Client の 2 つの性質が使用できる。


画面に Button を二つ追加。一つは「StartHost」スクリプト、もう一つに「StopHost」スクリプトをアタッチ。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class StartHost : MonoBehaviour
{
    public void OnClick()
    {
        Debug.Log("Start Host");
        MLAPI.NetworkingManager.Singleton.StartHost();
    }
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class StopHost : MonoBehaviour
{
    public void OnClick()
    {
        Debug.Log("Stop Host");
        MLAPI.NetworkingManager.Singleton.StopHost();
    }
}

各 Button の On Click () から「StartHost.OnClick」と「StopHost.OnClick」を選択する。

シーンを起動して、「Start Host」ボタン、「Stop Host」ボタンを押して、エラーが出ないことを確認する。

f:id:rightgo09:20201201222708p:plain