首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Photon支持多协议连接吗?

Photon支持多协议连接吗?
EN

Stack Overflow用户
提问于 2014-11-25 16:30:15
回答 3查看 1.7K关注 0票数 0

我需要使用UDP和TCP连接将Unity3D客户端连接到Photon。有可能吗?我在哪里能读到它?我想用TCP发送大量的数据。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-01-13 11:52:33

光子服务器同时支持多种协议。如果下载了服务器sdk,请查找PhotonServer.config:

它包含这样的条目

代码语言:javascript
复制
<UDPListeners>
    <UDPListener
        IPAddress="0.0.0.0"
        Port="5055">
    </UDPListener>
</UDPListeners>

代码语言:javascript
复制
<TCPListeners>
    <TCPListener
        IPAddress="0.0.0.0"
        Port="4530"
        PolicyFile="Policy\assets\socket-policy.xml"
        InactivityTimeout="10000"
        >
    </TCPListener>
</TCPListeners>

您的客户端可以连接到每个udp或tcp,并相互交互,不管您选择了什么协议。

对于完整的配置选项,您可以在这里查看:http://doc.exitgames.com/en/onpremise/current/reference/server-config-settings

当客户端连接时,您可以在服务器端应用程序中查询客户端是如何连接的:

代码语言:javascript
复制
public class YourApplication : ApplicationBase
{

    if (initRequest.LocalPort == 5055)
    {
    //
    }

    if (initRequest.PhotonPeer.GetListenerType() == ListenerType.TCPListener)
    {
    //
}

注意:配置中的UDPListener在代码中表示为ListenerType.ENetListener。

您可以在下载的{ sdk }\doc\Photon.SocketServer.chm或在线的http://doc-api.exitgames.com/en/onpremise/current/server/doc/annotated.html中找到服务器sdk文档。

票数 0
EN

Stack Overflow用户

发布于 2014-11-25 18:07:53

简单的回答是:不。光子服务器不能有超过一种类型的连接。但是,根据您对“服务器”的定义,有一种方法可以做到这一点。在此解释的基础上,让我们将运行在机器上的对象实例称为服务器。服务器正在运行的机器,我们会打电话给机器。您可以在一台机器上运行多个服务器,在其中它们可以有不同类型的连接。例如,您可以让统一客户端使用UDP连接连接到物理服务器,并使用TCP连接将客户机连接到所需的其他任何东西。

票数 0
EN

Stack Overflow用户

发布于 2015-01-18 19:10:13

光子服务器处理连接对象称为Peerbase。每个对等点都是每个客户端连接。在客户端对等连接中,您只选择UDP或TCP协议。解决方案是创建两个对等点,一个是UDP,另一个是TCP,但在一个客户端很难处理UDP和TCP对等点在一个客户端中查找播放器信息和发送数据的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27131898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档