Unity-Technologies / com.unity.netcode.gameobjects

Netcode for GameObjects is a high-level netcode SDK that provides networking capabilities to GameObject/MonoBehaviour workflows within Unity and sits on top of underlying transport layer.
MIT License
2.1k stars 430 forks source link

fix: post 2.0.0-pre.2 fixes and updates #2962

Closed NoelStephensUnity closed 2 days ago

NoelStephensUnity commented 4 days ago

NGO v2.0.0-pre.2 Issues Fixed

Cannot be merged until either:

Distributed Authority Network Topology Specific

Synchronizing With Scene Management Disabled:

If scene management was disabled and a late joining client connected, the session owner would still try to synchronize the client which would lead to a "Key not found" exception.

Spawning NetworkObject Before Approved

If a session owner attempted to spawn a NetworkObject immediately upon the initial service connection being established, it would allow you to spawn a NetworkObject that was owned by the service which is not a valid spawned object.

NGO (Any Network Topology)

Spawning NetworkObject Within NetworkBehaviour.OnNetworkSessionSynchronized

If you spawn a NetworkObject within an overridden NetworkBehaviour.OnNetworkSessionSynchronized method, you would get a list changed exception.

NGO v1.x Up-Port

Added support for byte on NetworkVariable through codegen

This is an up-port of #2953

Changelog

Testing and Documentation