话不多说直接开始
1 申请服务器(阿里云/腾讯云)
笔者这边直接白嫖的阿里云一个月,测试学习一个月应该是够了。记得重置密码并记录
申请完成后点击左侧目录找到云服务器。记住这个公有服务器,等等会用到。
2 Unity Mirror 坦克大战场景
在NetworkManager找到对应地址,填写刚刚对应的公网地址;max connections是最大连接数。注意要在阿里云安全组添加对应端口号。不然连接会失败。
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模块。记得勾选Server Build
打包完成后,文件目录内容为
4 服务器工具WinScp&&可视化工具MobaXterm_Personal_22.2
首先打开WinScp来连接阿里云服务器,输入阿里云用户名和密码。
然后将刚刚打包出来的文件夹上传到服务器。
然后使用可视化工具MobaXterm_Personal_22.2。点击Session->SSH->输入账号->控制台输入密码-> cd linux(打包出来的文件夹名)-> chmod +x NetConectTest.x86_64(添加权限) ->./NetConectTest.x86_64(运行可执行文件)。出现Server already started.说明已经启用监听。下一步返回Unity
注意!NetConectTest.x86_64是可执行文件名称。可能根据你们的命名不同前缀不一样。在文件夹中查看x86_64即可
5 最后一步!
回到Unity取消Bool勾选,切换为客户端。然后BuildSetting切换为Windows。注意取消勾选Server Build。
6 测试
文章来源:https://www.toymoban.com/news/detail-462485.html
测试 连接成功 文章来源地址https://www.toymoban.com/news/detail-462485.html
到了这里,关于Unity mirror实现多人同时在线(LINUX)保姆级的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!