【发布时间】:2018-07-17 01:27:52
【问题描述】:
在 Unity 的新网络中,我有两台计算机并排在同一个 WiFi 网络上。
使用NetworkManager,我正在尝试通过 LAN 将它们联网。
待定,与全球互联网网络完全无关,与本地主机无关。
左边是192.168.0.26。
右边是192.168.0.120。
假设我们希望左边的服务器作为服务器,即简单地使用
Debug.Log("I'm now a server");
networkManager.StartServer();
假设我们希望合适的人成为客户(所以,StartClient()。)
TBC 我只是在两台电脑上查看了ipConfig/etc,得到当前本地IP。
我绝对确保两台机器都为 Unity 编辑器打开了防火墙(令人恼火的问题)。
事实上,您使用的是哪个“NetworkAddress”(见图)?在两台机器上?
有四种排列。
我只是无法让他们通过 LAN 连接 - 网络地址应该是什么?
脚注:任何在这里使用谷歌搜索的人都请注意这个关于 Unet 的关键提示 ...https://stackoverflow.com/a/51759299/294884
【问题讨论】:
-
Server(Mac) 端应该放 localhost 或 192.168.0.26。客户端(PC)应该放服务器的ip,也是192.168.0.26。
-
localhost 是完全错误的。对不起。
-
首先,每个实例(客户端/服务器)都应该有相同的 IP 地址。另外如果你想如果你做一个客户端的实例,他不知道服务器的IP,他怎么能连接?最后,您应该使用服务器机器本地分配的 IP 地址(由路由器),在您的情况下为
192.168.0.26。我建议使用networkManager.StartHost();而不是networkManager.StartServer();,因为您的服务器可能还需要一个客户端。如果不是这种情况,请忽略它。 -
嗨@Hristo - 解释清楚,我会试试的!
-
如果您仍然遇到连接问题,请考虑从 Mac/PC 切换客户端/服务器,因为我不知道 Mac 是否有会阻止服务器生成的防火墙。
标签: unity3d networking