com.unity.netcode.gameobjects@1.0.0-pre.9

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

Additional documentation and release notes are available at [Multiplayer Documentation](https://docs-multiplayer.unity3d.com).

## [1.0.0-pre.9] - 2022-05-10

### Fixed

- Fixed Hosting again after failing to host now works correctly (#1938)
- Fixed NetworkManager to cleanup connected client lists after stopping (#1945)
- Fixed NetworkHide followed by NetworkShow on the same frame works correctly (#1940)
This commit is contained in:
Unity Technologies
2022-05-10 00:00:00 +00:00
parent add668dfd2
commit 5b1fc203ed
10 changed files with 143 additions and 30 deletions

View File

@@ -11,6 +11,7 @@ namespace Unity.Netcode
public class NetworkList<T> : NetworkVariableSerialization<T> where T : unmanaged, IEquatable<T>
{
private NativeList<T> m_List = new NativeList<T>(64, Allocator.Persistent);
private NativeList<T> m_ListAtLastReset = new NativeList<T>(64, Allocator.Persistent);
private NativeList<NetworkListEvent<T>> m_DirtyEvents = new NativeList<NetworkListEvent<T>>(64, Allocator.Persistent);
/// <summary>
@@ -41,7 +42,11 @@ namespace Unity.Netcode
public override void ResetDirty()
{
base.ResetDirty();
m_DirtyEvents.Clear();
if (m_DirtyEvents.Length > 0)
{
m_DirtyEvents.Clear();
m_ListAtLastReset.CopyFrom(m_List);
}
}
/// <inheritdoc />
@@ -109,10 +114,10 @@ namespace Unity.Netcode
/// <inheritdoc />
public override void WriteField(FastBufferWriter writer)
{
writer.WriteValueSafe((ushort)m_List.Length);
for (int i = 0; i < m_List.Length; i++)
writer.WriteValueSafe((ushort)m_ListAtLastReset.Length);
for (int i = 0; i < m_ListAtLastReset.Length; i++)
{
Write(writer, m_List[i]);
Write(writer, m_ListAtLastReset[i]);
}
}
@@ -454,6 +459,7 @@ namespace Unity.Netcode
public override void Dispose()
{
m_List.Dispose();
m_ListAtLastReset.Dispose();
m_DirtyEvents.Dispose();
}
}