@@ -652,11 +652,7 @@ public void NetworkUpdate(NetworkUpdateStage updateStage)
652
652
653
653
private void OnNetworkEarlyUpdate ( )
654
654
{
655
- PerformanceDataManager . BeginNewTick ( ) ;
656
- if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
657
- {
658
- profileTransport . BeginNewTick ( ) ;
659
- }
655
+ ProfilerBeginTick ( ) ;
660
656
661
657
if ( IsListening )
662
658
{
@@ -760,13 +756,7 @@ private void OnNetworkPreUpdate()
760
756
}
761
757
}
762
758
763
- if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
764
- {
765
- var transportProfilerData = profileTransport . GetTransportProfilerData ( ) ;
766
- PerformanceDataManager . AddTransportData ( transportProfilerData ) ;
767
- }
768
-
769
- OnPerformanceDataEvent ? . Invoke ( PerformanceDataManager . GetData ( ) ) ;
759
+ NotifyProfilerListeners ( ) ;
770
760
}
771
761
772
762
internal void UpdateNetworkTime ( ulong clientId , float netTime , float receiveTime , bool warp = false )
@@ -1495,5 +1485,37 @@ internal void HandleApproval(ulong clientId, bool createPlayerObject, ulong? pla
1495
1485
NetworkConfig . NetworkTransport . DisconnectRemoteClient ( clientId ) ;
1496
1486
}
1497
1487
}
1488
+
1489
+ private void ProfilerBeginTick ( )
1490
+ {
1491
+ PerformanceDataManager . BeginNewTick ( ) ;
1492
+ if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
1493
+ {
1494
+ profileTransport . BeginNewTick ( ) ;
1495
+ }
1496
+ }
1497
+
1498
+ private void NotifyProfilerListeners ( )
1499
+ {
1500
+ var data = PerformanceDataManager . GetData ( ) ;
1501
+ var eventHandler = OnPerformanceDataEvent ;
1502
+ if ( eventHandler != null )
1503
+ {
1504
+ if ( data != null )
1505
+ {
1506
+ if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
1507
+ {
1508
+ var transportProfilerData = profileTransport . GetTransportProfilerData ( ) ;
1509
+ PerformanceDataManager . AddTransportData ( transportProfilerData ) ;
1510
+ }
1511
+
1512
+ eventHandler . Invoke ( data ) ;
1513
+ }
1514
+ else
1515
+ {
1516
+ NetworkLog . LogWarning ( "No data available. Did you forget to call PerformanceDataManager.BeginNewTick() first?" ) ;
1517
+ }
1518
+ }
1519
+ }
1498
1520
}
1499
1521
}
0 commit comments