Skip to content

Commit ae12e5d

Browse files
committed
Merge remote-tracking branch 'smitdylan/Fix/Performance-Optimization' into fix/performance-optimizations
2 parents 2081683 + db09807 commit ae12e5d

File tree

15 files changed

+34
-61
lines changed

15 files changed

+34
-61
lines changed

com.unity.netcode.gameobjects/Editor/CodeGen/NetworkBehaviourILPP.cs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1432,10 +1432,7 @@ private void ProcessNetworkBehaviour(TypeDefinition typeDefinition, string[] ass
14321432
if (typeDefinition.HasGenericParameters)
14331433
{
14341434
var genericTypes = new List<TypeReference>();
1435-
foreach (var parameter in typeDefinition.GenericParameters)
1436-
{
1437-
genericTypes.Add(parameter);
1438-
}
1435+
genericTypes.AddRange(typeDefinition.GenericParameters);
14391436
callMethod = callMethod.MakeGeneric(genericTypes.ToArray());
14401437
}
14411438

@@ -3102,10 +3099,7 @@ private MethodDefinition GenerateStaticHandler(MethodDefinition methodDefinition
31023099
if (castType.HasGenericParameters)
31033100
{
31043101
var genericTypes = new List<TypeReference>();
3105-
foreach (var parameter in castType.GenericParameters)
3106-
{
3107-
genericTypes.Add(parameter);
3108-
}
3102+
genericTypes.AddRange(castType.GenericParameters);
31093103
castType = castType.MakeGenericInstanceType(genericTypes.ToArray());
31103104
callMethod = callMethod.MakeGeneric(genericTypes.ToArray());
31113105
}

com.unity.netcode.gameobjects/Editor/Configuration/NetcodeForGameObjectsProjectSettings.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public class NetcodeForGameObjectsProjectSettings : ScriptableSingleton<NetcodeF
2222

2323
private void OnEnable()
2424
{
25-
if (NetworkPrefabsPath == "")
25+
if (NetworkPrefabsPath?.Length == 0)
2626
{
2727
NetworkPrefabsPath = DefaultNetworkPrefabsPath;
2828
}

com.unity.netcode.gameobjects/Editor/Configuration/NetcodeSettingsProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ private static void OnDeactivate()
3636
if (settings.TempNetworkPrefabsPath != settings.NetworkPrefabsPath)
3737
{
3838
var newPath = settings.TempNetworkPrefabsPath;
39-
if (newPath == "")
39+
if (newPath?.Length == 0)
4040
{
4141
newPath = NetcodeForGameObjectsProjectSettings.DefaultNetworkPrefabsPath;
4242
settings.TempNetworkPrefabsPath = newPath;

com.unity.netcode.gameobjects/Editor/HiddenScriptEditor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ public override void OnInspectorGUI()
129129
overrideIp = EditorGUILayout.TextField("Override Bind IP (optional)", overrideIp);
130130
if (allowRemoteConnections)
131131
{
132-
if (overrideIp == "")
132+
if (overrideIp?.Length == 0)
133133
{
134134
if (isIpV6)
135135
{

com.unity.netcode.gameobjects/Editor/NetworkManagerEditor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ private void DisplayNetworkManagerProperties()
251251
// Default directory
252252
var directory = "Assets/";
253253
var assetPath = AssetDatabase.GetAssetPath(m_NetworkManager);
254-
if (assetPath == "")
254+
if (assetPath?.Length == 0)
255255
{
256256
assetPath = PrefabUtility.GetPrefabAssetPathOfNearestInstanceRoot(m_NetworkManager);
257257
}

com.unity.netcode.gameobjects/Runtime/Components/AnticipatedNetworkTransform.cs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -240,8 +240,7 @@ public void AnticipateState(TransformState newState)
240240
return;
241241
}
242242
var transform_ = transform;
243-
transform_.position = newState.Position;
244-
transform_.rotation = newState.Rotation;
243+
transform_.SetPositionAndRotation(newState.Position, newState.Rotation);
245244
transform_.localScale = newState.Scale;
246245
m_AnticipatedTransform = newState;
247246
if (CanCommitToTransform)
@@ -336,8 +335,7 @@ public void SetupForRender()
336335
Transform.m_AnticipatedTransform = Transform.m_AuthoritativeTransform;
337336
}
338337

339-
transform_.position = Transform.m_AnticipatedTransform.Position;
340-
transform_.rotation = Transform.m_AnticipatedTransform.Rotation;
338+
transform_.SetPositionAndRotation(Transform.m_AnticipatedTransform.Position, Transform.m_AnticipatedTransform.Rotation);
341339
transform_.localScale = Transform.m_AnticipatedTransform.Scale;
342340
}
343341
}
@@ -347,8 +345,7 @@ public void SetupForUpdate()
347345
if (Transform.CanCommitToTransform)
348346
{
349347
var transform_ = Transform.transform;
350-
transform_.position = Transform.m_AuthoritativeTransform.Position;
351-
transform_.rotation = Transform.m_AuthoritativeTransform.Rotation;
348+
transform_.SetPositionAndRotation(Transform.m_AuthoritativeTransform.Position, Transform.m_AuthoritativeTransform.Rotation);
352349
transform_.localScale = Transform.m_AuthoritativeTransform.Scale;
353350
}
354351
}
@@ -493,8 +490,7 @@ public void Smooth(TransformState from, TransformState to, float durationSeconds
493490
{
494491
m_AnticipatedTransform = to;
495492
m_PreviousAnticipatedTransform = m_AnticipatedTransform;
496-
transform_.position = to.Position;
497-
transform_.rotation = to.Rotation;
493+
transform_.SetPositionAndRotation(to.Position, to.Rotation);
498494
transform_.localScale = to.Scale;
499495
m_SmoothDuration = 0;
500496
m_CurrentSmoothTime = 0;
@@ -505,8 +501,7 @@ public void Smooth(TransformState from, TransformState to, float durationSeconds
505501

506502
if (!CanCommitToTransform)
507503
{
508-
transform_.position = from.Position;
509-
transform_.rotation = from.Rotation;
504+
transform_.SetPositionAndRotation(from.Position, from.Rotation);
510505
transform_.localScale = from.Scale;
511506
}
512507

com.unity.netcode.gameobjects/Runtime/Components/NetworkTransform.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ public bool HasPositionChange
181181
{
182182
get
183183
{
184-
return HasPositionX | HasPositionY | HasPositionZ;
184+
return HasPositionX || HasPositionY || HasPositionZ;
185185
}
186186
}
187187

@@ -241,7 +241,7 @@ public bool HasRotAngleChange
241241
{
242242
get
243243
{
244-
return HasRotAngleX | HasRotAngleY | HasRotAngleZ;
244+
return HasRotAngleX || HasRotAngleY || HasRotAngleZ;
245245
}
246246
}
247247

@@ -301,7 +301,7 @@ public bool HasScaleChange
301301
{
302302
get
303303
{
304-
return HasScaleX | HasScaleY | HasScaleZ;
304+
return HasScaleX || HasScaleY || HasScaleZ;
305305
}
306306
}
307307

@@ -3950,8 +3950,7 @@ private void SetStateInternal(Vector3 pos, Quaternion rot, Vector3 scale, bool s
39503950
{
39513951
if (InLocalSpace)
39523952
{
3953-
transform.localPosition = pos;
3954-
transform.localRotation = rot;
3953+
transform.SetLocalPositionAndRotation(pos, rot);
39553954
}
39563955
else
39573956
{
@@ -4539,8 +4538,8 @@ private void UpdateTransformState()
45394538
// - If UsUnrealiable is not enabled
45404539
// - If teleporting or synchronizing
45414540
// - If sending an UnrealiableFrameSync or synchronizing the base position of the NetworkDeltaPosition
4542-
var networkDelivery = !UseUnreliableDeltas | m_LocalAuthoritativeNetworkState.IsTeleportingNextFrame | m_LocalAuthoritativeNetworkState.IsSynchronizing
4543-
| m_LocalAuthoritativeNetworkState.UnreliableFrameSync | m_LocalAuthoritativeNetworkState.SynchronizeBaseHalfFloat
4541+
var networkDelivery = !UseUnreliableDeltas || m_LocalAuthoritativeNetworkState.IsTeleportingNextFrame || m_LocalAuthoritativeNetworkState.IsSynchronizing
4542+
|| m_LocalAuthoritativeNetworkState.UnreliableFrameSync || m_LocalAuthoritativeNetworkState.SynchronizeBaseHalfFloat
45444543
? NetworkDelivery.ReliableSequenced : NetworkDelivery.UnreliableSequenced;
45454544

45464545
// Server-host-dahost always sends updates to all clients (but itself)

com.unity.netcode.gameobjects/Runtime/Configuration/NetworkPrefabs.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -109,10 +109,7 @@ public void Initialize(bool warnInvalid = true)
109109
{
110110
foreach (var list in NetworkPrefabsLists)
111111
{
112-
foreach (var networkPrefab in list.PrefabList)
113-
{
114-
prefabs.Add(networkPrefab);
115-
}
112+
prefabs.AddRange(list.PrefabList);
116113
}
117114
}
118115

@@ -154,7 +151,7 @@ public void Initialize(bool warnInvalid = true)
154151
if (NetworkLog.CurrentLogLevel <= LogLevel.Error)
155152
{
156153
var sb = new StringBuilder("Removing invalid prefabs from Network Prefab registration: ");
157-
sb.Append(string.Join(", ", removeList));
154+
sb.AppendJoin(", ", removeList);
158155
NetworkLog.LogWarning(sb.ToString());
159156
}
160157
}

com.unity.netcode.gameobjects/Runtime/Core/NetworkObject.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ internal bool HasParentNetworkObject(Transform transform)
364364
/// <summary>
365365
/// Useful to know if we should or should not send a message
366366
/// </summary>
367-
internal bool HasRemoteObservers => !(Observers.Count() == 0 || (Observers.Contains(NetworkManager.LocalClientId) && Observers.Count() == 1));
367+
internal bool HasRemoteObservers => !(Observers.Count == 0 || (Observers.Contains(NetworkManager.LocalClientId) && Observers.Count == 1));
368368

369369
/// <summary>
370370
/// Distributed Authority Mode Only
@@ -1085,7 +1085,7 @@ internal void SendOwnershipStatusUpdate()
10851085
}
10861086
else
10871087
{
1088-
changeOwnership.ClientIdCount = Observers.Count();
1088+
changeOwnership.ClientIdCount = Observers.Count;
10891089
changeOwnership.ClientIds = Observers.ToArray();
10901090
NetworkManager.ConnectionManager.SendMessage(ref changeOwnership, NetworkDelivery.Reliable, NetworkManager.ServerClientId);
10911091
}

com.unity.netcode.gameobjects/Runtime/Messaging/Messages/ParentSyncMessage.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -130,13 +130,11 @@ public void Handle(ref NetworkContext context)
130130
// the values of the server-side post-parenting transform values
131131
if (!WorldPositionStays)
132132
{
133-
networkObject.transform.localPosition = Position;
134-
networkObject.transform.localRotation = Rotation;
133+
networkObject.transform.SetLocalPositionAndRotation(Position, Rotation);
135134
}
136135
else
137136
{
138-
networkObject.transform.position = Position;
139-
networkObject.transform.rotation = Rotation;
137+
networkObject.transform.SetPositionAndRotation(Position, Rotation);
140138
}
141139
networkObject.transform.localScale = Scale;
142140
}

0 commit comments

Comments
 (0)