【问题标题】:How to use Unity Transport API properly?如何正确使用 Unity Transport API?
【发布时间】:2018-12-15 16:20:57
【问题描述】:

我正在尝试使用 Unitys 传输 api 建立网络通信。

网络连接正在运行,两个设备可以通过NetworkDiscovery组件相互发送和接收广播。到目前为止一切顺利。

现在,如果我尝试通过传输 API 发送数据,我会在发送设备上收到错误,而在接收端则没有。

public void Send()
{
    Connection = new NetworkConnection();
    var info = LobbyRenderer.GetSelectedHostInfo();
    Connection.Initialize(info.ipv4, 1, 1, new HostTopology(new ConnectionConfig(), 1));

    byte connectionError;
    websocketId = NetworkTransport.AddWebsocketHost(new HostTopology(new ConnectionConfig(), 1), 47774);
    connectionId = NetworkTransport.Connect(websocketId, info.ipv4, 47774, 0, out connectionError);

    byte sendError;
    byte[] bytes = new byte[2] { 1,1 };
    NetworkTransport.Send(websocketId, connectionId, 1, bytes, 2, out sendError);
}

connectionError 字节返回 4, sendError 字节返回 2。

统一控制台:

我会很感激有关如何完成这项工作的提示。

【问题讨论】:

  • 我注意到“没有足够的资源来处理这个请求。”从 NetworkTransport.Connect 作为错误代码 4 返回。但此时我错过了什么?

标签: c# unity3d networking


【解决方案1】:

我不确定是不是这样,但是我在您的代码中看不到任何 QOS 通道,尝试添加一个,您在发送时也必须提供 QOS 通道。

public void Send()
{
    Connection = new NetworkConnection();
    var info = LobbyRenderer.GetSelectedHostInfo();
    Connection.Initialize(info.ipv4, 1, 1, new HostTopology(new ConnectionConfig(), 1));

    byte connectionError;
    ConnectionConfig config = new ConnectionConfig();
    int myReliableChannelId  = config.AddChannel(QosType.Reliable);
    int myUnreliableChannelId = config.AddChannel(QosType.Unreliable);
    websocketId = NetworkTransport.AddWebsocketHost(new HostTopology(config, 1), 47774);
    connectionId = NetworkTransport.Connect(websocketId, info.ipv4, 47774, 0, out connectionError);

    byte sendError;
    byte[] bytes = new byte[2] { 1,1 };
    NetworkTransport.Send(websocketId, connectionId, myReliableChannelId, bytes, 2, out sendError);
}

【讨论】:

  • 我在那里有一个神奇的“1”,因为我不知道会发生什么......谢谢! :)
猜你喜欢
  • 1970-01-01
  • 2017-08-13
  • 2022-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多