com.unity.transport 1.0.0-pre.6

com.unity.transport

Notes: processedReleased October 15, 2021

Browse versions

PreviousNext

Unity Compatibility

Minimum Unity: 2020.3 (0f1)

Features

  • Added heartbeats functionality to all protocols (enabled by default). If there's no traffic on a connection for some time, a heartbeat is automatically sent to keep the connection alive. The inactivity timeout is controlled by the new parameter `heartbeatTimeoutMS` in `NetworkConfigParameter`. Setting it to 0 disables the feature.

🔄 Changes

  • Added `heartbeatTimeoutMS` in `NetworkConfigParameter` to support heartbeats (see above).
  • `NetworkDriver.Bind` is now synchronous when using Relay (matches behavior of other protocols).
  • `NetworkDriver.Bind` is not required to be called anymore for Relay clients (only for host).
  • `EndSend` will now return an error if called with a writer that has failed writes.
  • MTU decreased to 1384 (from 1400) on Xbox platforms.
  • `Connect` will automatically bind the driver if not already bound. This was already done implicitly before, but now it's explicit (the `NetworkDriver.Bound` property will be true after a successful call to `Connect`).
  • Added `DataStream.ReadLong`

🔧 Bug Fixes

  • Fixed: Receiving a Disconnect message on DTLS would crash the receive job
  • Fixed: TLS server name might be set to nothing in Relay+DTLS, causing the handshake to fail
  • Fixed: Couldn't send large messages on fragmented pipeline if `requiredPayloadSize` was not provided to `BeginSend`
  • Fixed: DTLS handshake messages were never resent if lost
  • Fixed: Clients wouldn't honor the endpoint their were bound to

⚠️ Known Issues

  • Function pointers (for instance in `BeginSend` and `EndSend`) generate GC allocations in non-Burst use cases. The issue will be fixed in the next releases
  • XboxOne(S/X) crash when using fragmentation pipeline when the size of the packet is within 100 bytes of the MTU. This will be fixed in the next release