From 1702ebf174bc9646dd155197588f349aa3d0ffcd Mon Sep 17 00:00:00 2001 From: Jesse Olmer Date: Mon, 23 Aug 2021 16:34:18 -0700 Subject: [PATCH] chore!: Remove unsupported UNET Relay behavior BREAKING CHANGE: Unity.Netcode.Transports.UNET.RelayTransiport has been deleted. UNET over the UNET Relay is no longer supported. --- .../Runtime/Transports/UNET/RelayTransport.cs | 540 ------------------ .../Transports/UNET/RelayTransport.cs.meta | 11 - .../Runtime/Transports/UNET/UNetTransport.cs | 60 +- 3 files changed, 11 insertions(+), 600 deletions(-) delete mode 100644 com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs delete mode 100644 com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs.meta diff --git a/com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs b/com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs deleted file mode 100644 index c5edda9267..0000000000 --- a/com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs +++ /dev/null @@ -1,540 +0,0 @@ -#pragma warning disable 618 // disable is obsolete -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member -using System; -using System.Collections.Generic; -using System.Net; -using UnityEngine; -using UnityEngine.Networking; - -namespace Unity.Netcode.Transports.UNET -{ - public static class RelayTransport - { - private enum MessageType - { - StartServer, - ConnectToServer, - Data, - ClientDisconnect, - AddressReport - } - - private static byte s_DefaultChannelId; - private static int s_RelayConnectionId; - private static bool s_IsClient = false; - private static string s_Address; - private static ushort s_Port; - private static List s_Channels = new List(); - - public static bool Enabled { get; set; } = true; - public static string RelayAddress { get; set; } = "127.0.0.1"; - public static ushort RelayPort { get; set; } = 8888; - - public static event Action OnRemoteEndpointReported; - - public static int Connect(int hostId, string serverAddress, int serverPort, int exceptionConnectionId, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.Connect(hostId, serverAddress, serverPort, exceptionConnectionId, out error); - } - - s_IsClient = true; - - s_Address = serverAddress; - s_Port = (ushort)serverPort; - - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(hostId, RelayAddress, RelayPort, exceptionConnectionId, out error); // Requests connection - - return s_RelayConnectionId; - } - - public static int ConnectWithSimulator(int hostId, string serverAddress, int serverPort, int exceptionConnectionId, out byte error, ConnectionSimulatorConfig conf) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.ConnectWithSimulator(hostId, serverAddress, serverPort, exceptionConnectionId, out error, conf); - } - - s_IsClient = true; - - s_Address = serverAddress; - s_Port = (ushort)serverPort; - - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.ConnectWithSimulator(hostId, RelayAddress, RelayPort, exceptionConnectionId, out error, conf); // Requests connection - - return s_RelayConnectionId; - } - - public static int ConnectEndPoint(int hostId, EndPoint endPoint, int exceptionConnectionId, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.ConnectEndPoint(hostId, endPoint, exceptionConnectionId, out error); - } - - s_IsClient = true; - - s_Address = ((IPEndPoint)endPoint).Address.ToString(); - s_Port = (ushort)((IPEndPoint)endPoint).Port; - - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(hostId, RelayAddress, RelayPort, exceptionConnectionId, out error); // Requests connection - - return s_RelayConnectionId; - } - - private static void SetChannelsFromTopology(HostTopology topology) => s_Channels = topology.DefaultConfig.Channels; - - public static int AddHost(HostTopology topology, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddHost(topology, 0, null); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddHost(topology, 0, null); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddHost(HostTopology topology, int port, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddHost(topology, port); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddHost(topology, port); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddHost(HostTopology topology, int port, string ip, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddHost(topology, port, ip); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddHost(topology, port, ip); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddHostWithSimulator(HostTopology topology, int minTimeout, int maxTimeout, int port, string ip, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddHostWithSimulator(topology, minTimeout, maxTimeout); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddHostWithSimulator(topology, minTimeout, maxTimeout, port, ip); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddHostWithSimulator(HostTopology topology, int minTimeout, int maxTimeout, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddHostWithSimulator(topology, minTimeout, maxTimeout); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddHostWithSimulator(topology, minTimeout, maxTimeout); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddHostWithSimulator(HostTopology topology, int minTimeout, int maxTimeout, int port, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddHostWithSimulator(topology, minTimeout, maxTimeout, port); - } - - s_IsClient = !createServer; - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddHostWithSimulator(topology, minTimeout, maxTimeout, port); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddWebsocketHost(HostTopology topology, int port, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddWebsocketHost(topology, port); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddWebsocketHost(topology, port); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - public static int AddWebsocketHost(HostTopology topology, int port, string ip, bool createServer) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.AddWebsocketHost(topology, port, ip); - } - - s_IsClient = !createServer; - - s_DefaultChannelId = topology.DefaultConfig.AddChannel(QosType.ReliableSequenced); - - SetChannelsFromTopology(topology); - - int ret = UnityEngine.Networking.NetworkTransport.AddWebsocketHost(topology, port, ip); - - if (createServer) - { - s_RelayConnectionId = UnityEngine.Networking.NetworkTransport.Connect(ret, RelayAddress, RelayPort, 0, out byte b); - } - - return ret; - } - - private static byte[] s_DisconnectBuffer = { 0, 0, 0, 0, 0, 0, 0, 0, (byte)MessageType.ClientDisconnect }; - - public static bool Disconnect(int hostId, int connectionId, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.Disconnect(hostId, connectionId, out error); - } - - if (!s_IsClient) - { - for (byte i = 0; i < sizeof(ulong); i++) - { - s_DisconnectBuffer[i] = ((byte)((ulong)connectionId >> (i * 8))); - } - - return UnityEngine.Networking.NetworkTransport.Send(hostId, s_RelayConnectionId, s_DefaultChannelId, s_DisconnectBuffer, 9, out error); - } - - return UnityEngine.Networking.NetworkTransport.Disconnect(hostId, connectionId, out error); - } - - public static bool Send(int hostId, int connectionId, int channelId, byte[] buffer, int size, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.Send(hostId, connectionId, channelId, buffer, size, out error); - } - - ++size; - - if (!s_IsClient) - { - size += 8; - - int connectionIdOffset = size - 9; - - for (byte i = 0; i < sizeof(ulong); i++) - { - buffer[connectionIdOffset + i] = ((byte)((ulong)connectionId >> (i * 8))); - } - } - - buffer[size - 1] = (byte)MessageType.Data; - - return UnityEngine.Networking.NetworkTransport.Send(hostId, s_RelayConnectionId, channelId, buffer, size, out error); - } - -#if !UNITY_WEBGL - public static bool QueueMessageForSending(int hostId, int connectionId, int channelId, byte[] buffer, int size, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.QueueMessageForSending(hostId, connectionId, channelId, buffer, size, out error); - } - - ++size; - - if (!s_IsClient) - { - size += 8; - - int connectionIdOffset = size - 9; - - for (byte i = 0; i < sizeof(ulong); i++) - { - buffer[connectionIdOffset + i] = ((byte)((ulong)connectionId >> (i * 8))); - } - } - - buffer[size - 1] = (byte)MessageType.Data; - - return UnityEngine.Networking.NetworkTransport.QueueMessageForSending(hostId, s_RelayConnectionId, channelId, buffer, size, out error); - } - - public static bool SendQueuedMessages(int hostId, int connectionId, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.SendQueuedMessages(hostId, connectionId, out error); - } - - return UnityEngine.Networking.NetworkTransport.SendQueuedMessages(hostId, s_RelayConnectionId, out error); - } -#endif - - public static NetworkEventType ReceiveFromHost(int hostId, out int connectionId, out int channelId, byte[] buffer, int bufferSize, out int receivedSize, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.ReceiveFromHost(hostId, out connectionId, out channelId, buffer, bufferSize, out receivedSize, out error); - } - - var eventType = UnityEngine.Networking.NetworkTransport.ReceiveFromHost(hostId, out connectionId, out channelId, buffer, bufferSize, out receivedSize, out error); - - return BaseReceive(eventType, hostId, ref connectionId, ref channelId, buffer, bufferSize, ref receivedSize, ref error); - } - - public static NetworkEventType Receive(out int hostId, out int connectionId, out int channelId, byte[] buffer, int bufferSize, out int receivedSize, out byte error) - { - if (!Enabled) - { - return UnityEngine.Networking.NetworkTransport.Receive(out hostId, out connectionId, out channelId, buffer, bufferSize, out receivedSize, out error); - } - - var eventType = UnityEngine.Networking.NetworkTransport.Receive(out hostId, out connectionId, out channelId, buffer, bufferSize, out receivedSize, out error); - - return BaseReceive(eventType, hostId, ref connectionId, ref channelId, buffer, bufferSize, ref receivedSize, ref error); - } - - private static NetworkEventType BaseReceive(NetworkEventType netEvent, int hostId, ref int connectionId, ref int channelId, byte[] buffer, int bufferSize, ref int receivedSize, ref byte error) - { - switch (netEvent) - { - case NetworkEventType.DataEvent: - { - var messageType = (MessageType)buffer[receivedSize - 1]; - - switch (messageType) - { - case MessageType.AddressReport: - { - byte[] addressBytes = new byte[16]; - - for (int i = 0; i < addressBytes.Length; i++) - { - addressBytes[i] = buffer[i]; - } - - ushort remotePort = (ushort)(((ushort)buffer[16]) | - ((ushort)buffer[17] << 8)); - - var remoteEndPoint = new IPEndPoint(new IPAddress(addressBytes), remotePort); - - OnRemoteEndpointReported?.Invoke(remoteEndPoint); - - break; - } - case MessageType.ConnectToServer: // Connection approved - { - if (!s_IsClient) - { - ulong connIdFromBuffer = (((ulong)buffer[receivedSize - 9]) | - ((ulong)buffer[receivedSize - 8] << 8) | - ((ulong)buffer[receivedSize - 7] << 16) | - ((ulong)buffer[receivedSize - 6] << 24) | - ((ulong)buffer[receivedSize - 5] << 32) | - ((ulong)buffer[receivedSize - 4] << 40) | - ((ulong)buffer[receivedSize - 3] << 48) | - ((ulong)buffer[receivedSize - 2] << 56)); - - connectionId = (int)connIdFromBuffer; - } - - return NetworkEventType.ConnectEvent; - } - case MessageType.Data: - { - // Implicitly remove header - if (s_IsClient) - { - --receivedSize; - } - else - { - receivedSize -= 9; - - ulong connIdFromBuffer = (((ulong)buffer[receivedSize]) | - ((ulong)buffer[receivedSize + 1] << 8) | - ((ulong)buffer[receivedSize + 2] << 16) | - ((ulong)buffer[receivedSize + 3] << 24) | - ((ulong)buffer[receivedSize + 4] << 32) | - ((ulong)buffer[receivedSize + 5] << 40) | - ((ulong)buffer[receivedSize + 6] << 48) | - ((ulong)buffer[receivedSize + 7] << 56)); - - connectionId = (int)connIdFromBuffer; - } - - return NetworkEventType.DataEvent; - } - case MessageType.ClientDisconnect: - { - ulong connIdFromBuffer = (((ulong)buffer[0]) | - ((ulong)buffer[1] << 8) | - ((ulong)buffer[2] << 16) | - ((ulong)buffer[3] << 24) | - ((ulong)buffer[4] << 32) | - ((ulong)buffer[5] << 40) | - ((ulong)buffer[6] << 48) | - ((ulong)buffer[7] << 56)); - - connectionId = (int)connIdFromBuffer; - - return NetworkEventType.DisconnectEvent; - } - } - } - break; - case NetworkEventType.ConnectEvent: - { - if (s_IsClient) - { - //Connect via relay - - byte[] ipv6AddressBuffer; - var ipAddress = IPAddress.Parse(s_Address); - - if (ipAddress.AddressFamily == System.Net.Sockets.AddressFamily.InterNetworkV6) - { - ipv6AddressBuffer = ipAddress.GetAddressBytes(); - } - else if (ipAddress.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) - { - byte[] ipv4Address = ipAddress.GetAddressBytes(); - ipv6AddressBuffer = new byte[16] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, ipv4Address[0], ipv4Address[1], ipv4Address[2], ipv4Address[3] }; - } - else - { - // TODO: Throw wrong type - ipv6AddressBuffer = null; - } - - // TODO: Throw if address is not 16 bytes. It should always be - for (int i = 0; i < ipv6AddressBuffer.Length; i++) - { - buffer[i] = ipv6AddressBuffer[i]; - } - - for (byte i = 0; i < sizeof(ushort); i++) - { - buffer[16 + i] = ((byte)(s_Port >> (i * 8))); - } - - buffer[16 + 2] = (byte)MessageType.ConnectToServer; - - UnityEngine.Networking.NetworkTransport.Send(hostId, connectionId, s_DefaultChannelId, buffer, 16 + 2 + 1, out error); - } - else - { - //Register us as a server - buffer[0] = (byte)MessageType.StartServer; - - UnityEngine.Networking.NetworkTransport.Send(hostId, connectionId, s_DefaultChannelId, buffer, 1, out error); - } - - return NetworkEventType.Nothing; // Connect event is ignored - } - case NetworkEventType.DisconnectEvent: - { - if ((NetworkError)error == NetworkError.CRCMismatch) - { - Debug.LogError("[Netcode.Relay] Relay detected a CRC mismatch. This could be due to the maxClients or other connectionConfig settings not being the same"); - } - - return NetworkEventType.DisconnectEvent; - } - } - - return netEvent; - } - } - - public class InvalidConfigException : SystemException - { - public InvalidConfigException() { } - public InvalidConfigException(string issue) : base(issue) { } - } -} -#pragma warning restore CS1591 // Missing XML comment for publicly visible type or member -#pragma warning restore 618 // restore is obsolete diff --git a/com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs.meta b/com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs.meta deleted file mode 100644 index 56fe67c184..0000000000 --- a/com.unity.netcode.gameobjects/Runtime/Transports/UNET/RelayTransport.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 11544f78e46198d4cb39bfb970a357aa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.netcode.gameobjects/Runtime/Transports/UNET/UNetTransport.cs b/com.unity.netcode.gameobjects/Runtime/Transports/UNET/UNetTransport.cs index b693d3edaf..b93d9b3abe 100644 --- a/com.unity.netcode.gameobjects/Runtime/Transports/UNET/UNetTransport.cs +++ b/com.unity.netcode.gameobjects/Runtime/Transports/UNET/UNetTransport.cs @@ -23,8 +23,6 @@ public enum SendMode public string ConnectAddress = "127.0.0.1"; public int ConnectPort = 7777; public int ServerListenPort = 7777; - public int ServerWebsocketListenPort = 8887; - public bool SupportWebsocket = false; // user-definable channels. To add your own channel, do something of the form: // #define MY_CHANNEL 0 @@ -38,11 +36,6 @@ public enum SendMode // ); public List Channels = new List(); - // Relay - public bool UseNetcodeRelay = false; - public string NetcodeRelayAddress = "127.0.0.1"; - public int NetcodeRelayPort = 8888; - public SendMode MessageSendMode = SendMode.Immediately; // Runtime / state @@ -142,12 +135,12 @@ public override void Send(ulong clientId, ArraySegment data, NetworkChanne #if UNITY_WEBGL Debug.LogError("Cannot use queued sending mode for WebGL"); #else - RelayTransport.QueueMessageForSending(hostId, connectionId, channelId, buffer, data.Count, out byte error); + UnityEngine.Networking.NetworkTransport.QueueMessageForSending(hostId, connectionId, channelId, buffer, data.Count, out byte error); #endif } else { - RelayTransport.Send(hostId, connectionId, channelId, buffer, data.Count, out byte error); + UnityEngine.Networking.NetworkTransport.Send(hostId, connectionId, channelId, buffer, data.Count, out byte error); } } @@ -156,13 +149,13 @@ public void SendQueued(ulong clientId) { GetUNetConnectionDetails(clientId, out byte hostId, out ushort connectionId); - RelayTransport.SendQueuedMessages(hostId, connectionId, out byte error); + UnityEngine.Networking.NetworkTransport.SendQueuedMessages(hostId, connectionId, out byte error); } #endif public override NetworkEvent PollEvent(out ulong clientId, out NetworkChannel networkChannel, out ArraySegment payload, out float receiveTime) { - var eventType = RelayTransport.Receive(out int hostId, out int connectionId, out int channelId, m_MessageBuffer, m_MessageBuffer.Length, out int receivedSize, out byte error); + var eventType = UnityEngine.Networking.NetworkTransport.Receive(out int hostId, out int connectionId, out int channelId, m_MessageBuffer, m_MessageBuffer.Length, out int receivedSize, out byte error); clientId = GetNetcodeClientId((byte)hostId, (ushort)connectionId, false); receiveTime = Time.realtimeSinceStartup; @@ -182,7 +175,7 @@ public override NetworkEvent PollEvent(out ulong clientId, out NetworkChannel ne m_TemporaryBufferReference = new WeakReference(tempBuffer); } - eventType = RelayTransport.Receive(out hostId, out connectionId, out channelId, tempBuffer, tempBuffer.Length, out receivedSize, out error); + eventType = UnityEngine.Networking.NetworkTransport.Receive(out hostId, out connectionId, out channelId, tempBuffer, tempBuffer.Length, out receivedSize, out error); payload = new ArraySegment(tempBuffer, 0, receivedSize); } else @@ -257,8 +250,8 @@ public override SocketTasks StartClient() { var socketTask = SocketTask.Working; - m_ServerHostId = RelayTransport.AddHost(new HostTopology(GetConfig(), 1), false); - m_ServerConnectionId = RelayTransport.Connect(m_ServerHostId, ConnectAddress, ConnectPort, 0, out byte error); + m_ServerHostId = UnityEngine.Networking.NetworkTransport.AddHost(new HostTopology(GetConfig(), 1), 0, null); + m_ServerConnectionId = UnityEngine.Networking.NetworkTransport.Connect(m_ServerHostId, ConnectAddress, ConnectPort, 0, out byte error); var connectError = (NetworkError)error; @@ -288,22 +281,7 @@ public override SocketTasks StartServer() { var topology = new HostTopology(GetConfig(), MaxConnections); - if (SupportWebsocket) - { - if (!UseNetcodeRelay) - { - int websocketHostId = UnityEngine.Networking.NetworkTransport.AddWebsocketHost(topology, ServerWebsocketListenPort); - } - else - { - if (NetworkLog.CurrentLogLevel <= LogLevel.Error) - { - NetworkLog.LogError("Cannot create websocket host when using Unity.Netcode relay"); - } - } - } - - int normalHostId = RelayTransport.AddHost(topology, ServerListenPort, true); + int normalHostId = UnityEngine.Networking.NetworkTransport.AddHost(topology, ServerListenPort, null); return SocketTask.Done.AsTasks(); } @@ -312,26 +290,19 @@ public override void DisconnectRemoteClient(ulong clientId) { GetUNetConnectionDetails(clientId, out byte hostId, out ushort connectionId); - RelayTransport.Disconnect((int)hostId, (int)connectionId, out byte error); + UnityEngine.Networking.NetworkTransport.Disconnect((int)hostId, (int)connectionId, out byte error); } public override void DisconnectLocalClient() { - RelayTransport.Disconnect(m_ServerHostId, m_ServerConnectionId, out byte error); + UnityEngine.Networking.NetworkTransport.Disconnect(m_ServerHostId, m_ServerConnectionId, out byte error); } public override ulong GetCurrentRtt(ulong clientId) { GetUNetConnectionDetails(clientId, out byte hostId, out ushort connectionId); - if (UseNetcodeRelay) - { - return 0; - } - else - { - return (ulong)UnityEngine.Networking.NetworkTransport.GetCurrentRTT((int)hostId, (int)connectionId, out byte error); - } + return (ulong)UnityEngine.Networking.NetworkTransport.GetCurrentRTT((int)hostId, (int)connectionId, out byte error); } public override void Shutdown() @@ -343,8 +314,6 @@ public override void Shutdown() public override void Init() { - UpdateRelay(); - m_MessageBuffer = new byte[MessageBufferSize]; UnityEngine.Networking.NetworkTransport.Init(); @@ -457,13 +426,6 @@ public int AddUNETChannel(QosType type, ConnectionConfig config) return 0; } - - private void UpdateRelay() - { - RelayTransport.Enabled = UseNetcodeRelay; - RelayTransport.RelayAddress = NetcodeRelayAddress; - RelayTransport.RelayPort = (ushort)NetcodeRelayPort; - } } } #pragma warning restore CS1591 // Missing XML comment for publicly visible type or member