さっそく始めましょう
1 サーバー(Alibaba Cloud/Tencent Cloud)を申請する
ここで著者は Alibaba Cloud を 1 か月間無料で直接使用しましたが、テストと学習には 1 か月あれば十分です。忘れずにパスワードをリセットし、記録してください
申請が完了したら、左側のディレクトリをクリックしてクラウド サーバーを見つけます。このパブリック サーバーは後で使用するので覚えておいてください。
2 Unity Mirror 戦車戦闘シーン
NetworkManager で対応するアドレスを見つけて、対応するパブリック ネットワーク アドレスを入力します。最大接続数は接続の最大数です。対応するポート番号を Alibaba Cloud セキュリティ グループに追加する必要があることに注意してください。そうしないと接続が失敗します。
3. スクリプト
Linux 側にアップロードされるリソース パッケージはサーバー側にある必要があることに注意してください。パッケージ化されたゲーム ファイルはクライアント側である必要があります。スクリプトを記述したら、NetworkManager にマウントします。チェックを入れるとサーバーになります。「クライアント」のチェックを外します。
using System.Collections;
using System.Collections.Generic;
using Mirror;
using UnityEngine;
public class AddService : MonoBehaviour
{
public bool AppIsServer = false;
private NetworkManager networkManager;
void Start()
{
networkManager = GetComponent<NetworkManager>();
if (AppIsServer == true)
{
networkManager.StartServer();
}
else
{
networkManager.StartClient();
}
}
// Update is called once per frame
void Update()
{
}
}
確認後、Linux のパッケージ化方法を選択します。TargetPlatform に Linux が見つからない場合は、まず Linux モジュールがインストールされているかどうかを検討してください。サーバービルドを忘れずに確認してください
パッケージ化が完了すると、ファイル ディレクトリの内容は次のようになります。
4 サーバー ツール WinScp&&視覚化ツール MobaXterm_Personal_22.2
まず WinScp を開いて Alibaba Cloud サーバーに接続し、Alibaba Cloud のユーザー名とパスワードを入力します。
次に、パッケージ化したフォルダーをサーバーにアップロードします。
次に、視覚化ツール MobaXterm_Personal_22.2 を使用します。「セッション」→「SSH」→「アカウントの入力」→「コンソールにパスワードを入力」→「cd linux」(パッケージ化されたフォルダー名)→「chmod +x NetConectTest.x86_64」(アクセス許可の追加)→「./NetConectTest.x86_64」(実行可能ドキュメントの実行)をクリックします。「サーバーはすでに起動しています」と表示され、監視が有効になっていることを示します。次のステップは Unity に戻ります
知らせ!NetConectTest.x86_64 は実行可能ファイル名です。接頭辞は名前によって異なる場合があります。フォルダー内の x86_64 を見てください。
5 最後のステップ!
Unity に戻り、Bool のチェックを外してクライアントに切り替えます。次に、BuildSetting が Windows に切り替わります。[サーバーの構築] がオフになっていることに注意してください。
6つのテスト
テスト接続が成功しました