如何将一个桌面作为 Photon Unity 服务器

Posted

技术标签:

【中文标题】如何将一个桌面作为 Photon Unity 服务器【英文标题】:How to make one desktop as a Photon Unity server 【发布时间】:2018-09-11 01:16:16 【问题描述】:

如何在 localhost 中制作我自己的 photon unity 网络服务器,而不是在此处指定的云中。

我尝试使用“自托管”托管并尝试了本地主机和设备的 IP 地址,但每次我都收到以下错误

接收问题。状态:已连接。服务器:'localhost' 错误代码:10054 SocketErrorCode:ConnectionReset 消息:现有连接被远程主机强行关闭。 System.Net.Sockets.SocketException:一个现有的连接被远程主机强行关闭。

我还尝试更改其使用的端口号,并验证该端口是否正在被其他进程使用。

不过,我无法在 localhost 中创建光子服务器。谁能告诉我如何在 localhost 中制作它?

【问题讨论】:

尝试将其设置为 0.0.0.0 而不是 localhost 感谢您的回复。但是在使用 0.0.0.0.Connect() 到 '0.0.0.0' (InterNetwork) 时显示套接字异常失败:System.Net.Sockets.SocketException:请求的地址在其上下文中无效。还有其他解决方案或建议吗? 你打开防火墙了吗?还是您尝试从同一台机器访问。 尝试编辑对 127.0.0.1 的引用 我已经禁用了防火墙,现在正在尝试在本地主机中使用。不在另一台机器上。我已经尝试使用 127.0.0.1 作为 PhotonServerSettings 下的服务器地址,但同样的错误。任何其他解决方案。 【参考方案1】:

我在使用 ConnectionProtocol.Udp 创建 PhotonPeer 时遇到了同样的问题。我可以改用ConnectionProtocol.Tcp 来解决它:

peer = new PhotonPeer(this, ConnectionProtocol.Tcp);

通过此更改,我能够连接到服务器。

【讨论】:

以上是关于如何将一个桌面作为 Photon Unity 服务器的主要内容,如果未能解决你的问题,请参考以下文章

Unity连Photon服务器入门详解

如何生成一个随机数并确保在 Unity 中使用 Photon 的每个人都相同?

请问用unity3d来制作MMO类型网络游戏,服务端该如何制作?听说用Photon网络引擎可以制作,有详细的教程吗?

Unity3d Photon角色移动不同步

photon Unity RPC 调用流程

使用Photon引擎进行unity网络游戏开发