optimizing network stuff
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System.Text;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using RebootKit.Engine.Main;
|
||||
using RebootKit.Engine.Network;
|
||||
using RebootKit.Engine.Simulation;
|
||||
@@ -55,7 +56,7 @@ namespace RebootKit.Engine.Development {
|
||||
}
|
||||
|
||||
void AppendNetworkStateInfo() {
|
||||
NetworkSystem network = RR.NetworkSystemInstance;
|
||||
NetworkSystem network = RR.Network;
|
||||
|
||||
if (network == null) {
|
||||
m_StringBuilder.AppendLine("NetworkSystem not initialized");
|
||||
@@ -74,7 +75,6 @@ namespace RebootKit.Engine.Development {
|
||||
if (network.TryGetClientState(network.LocalClientID, out NetworkClientState clientState)) {
|
||||
m_StringBuilder.Append($"LocalClientID: {clientState.ClientID.ToString()}");
|
||||
m_StringBuilder.Append($" | SyncState: {clientState.SyncState.ToString()}");
|
||||
m_StringBuilder.Append($" | ActorsSyncPacketsLeft: {clientState.ActorsSyncPacketsLeft.ToString()}");
|
||||
m_StringBuilder.Append($" | IsReady: {clientState.IsReady.ToString()}");
|
||||
} else {
|
||||
m_StringBuilder.Append("ClientState not found for LocalClientID: ");
|
||||
@@ -82,10 +82,35 @@ namespace RebootKit.Engine.Development {
|
||||
}
|
||||
|
||||
m_StringBuilder.AppendLine();
|
||||
|
||||
if (network.Manager.Stats != null) {
|
||||
m_StringBuilder.Append("Stats: ");
|
||||
m_StringBuilder.Append($"Send Reliable: {FormatToLargestUnit(network.Manager.Stats.ReliableBytesSentPerSecond)}/s");
|
||||
m_StringBuilder.Append($" | Send Unreliable: {FormatToLargestUnit(network.Manager.Stats.UnreliableBytesSentPerSecond)}/s");
|
||||
m_StringBuilder.Append($" | Receive: {FormatToLargestUnit(network.Manager.Stats.BytesReceivedPerSecond)}/s");
|
||||
m_StringBuilder.Append($" | Ping: {network.Manager.Stats.Ping.ToString()}ms");
|
||||
m_StringBuilder.AppendLine();
|
||||
}
|
||||
}
|
||||
|
||||
string FormatToLargestUnit(double value) {
|
||||
if (value < 1024) {
|
||||
return $"{value:F2} B";
|
||||
}
|
||||
|
||||
if (value < 1024 * 1024) {
|
||||
return $"{(value / 1024):F2} KB";
|
||||
}
|
||||
|
||||
if (value < 1024 * 1024 * 1024) {
|
||||
return $"{(value / (1024 * 1024)):F2} MB";
|
||||
}
|
||||
|
||||
return $"{(value / (1024 * 1024 * 1024)):F2} GB";
|
||||
}
|
||||
|
||||
void AppendActorsStateInfo() {
|
||||
NetworkSystem network = RR.NetworkSystemInstance;
|
||||
NetworkSystem network = RR.Network;
|
||||
if (network == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
using System;
|
||||
using RebootKit.Engine.Foundation;
|
||||
using Unity.Multiplayer.Tools.NetStatsMonitor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.InputSystem;
|
||||
|
||||
@@ -11,15 +10,11 @@ namespace RebootKit.Engine.Development {
|
||||
|
||||
[ConfigVar("debug.game_version", 1, "Controls game version overlay visibility. 0 - hidden, 1 - visible")]
|
||||
public static ConfigVar ShowGameVersion;
|
||||
|
||||
[ConfigVar("debug.network_stats", 1, "Controls network stats overlay visibility. 0 - hidden, 1 - visible")]
|
||||
public static ConfigVar ShowNetworkStats;
|
||||
}
|
||||
|
||||
public class DevToolsService : ServiceMonoBehaviour {
|
||||
[SerializeField] DebugOverlayView m_DebugOverlayView;
|
||||
[SerializeField] GameVersionOverlay m_GameVersionOverlay;
|
||||
[SerializeField] RuntimeNetStatsMonitor m_NetworkStatsOverlay;
|
||||
|
||||
IDisposable m_CVarChangedListener;
|
||||
|
||||
@@ -27,7 +22,6 @@ namespace RebootKit.Engine.Development {
|
||||
ConfigVar.StateChanged += OnCVarChanged;
|
||||
OnCVarChanged(DebugCVars.OverlayMode);
|
||||
OnCVarChanged(DebugCVars.ShowGameVersion);
|
||||
OnCVarChanged(DebugCVars.ShowNetworkStats);
|
||||
}
|
||||
|
||||
void OnDisable() {
|
||||
@@ -42,10 +36,6 @@ namespace RebootKit.Engine.Development {
|
||||
if (InputSystem.GetDevice<Keyboard>().f3Key.wasReleasedThisFrame) {
|
||||
DebugCVars.OverlayMode.Set(DebugCVars.OverlayMode.IndexValue == 1 ? 0 : 1);
|
||||
}
|
||||
|
||||
if (InputSystem.GetDevice<Keyboard>().f4Key.wasReleasedThisFrame) {
|
||||
DebugCVars.ShowNetworkStats.Set(DebugCVars.ShowNetworkStats.IndexValue == 1 ? 0 : 1);
|
||||
}
|
||||
}
|
||||
|
||||
void OnOverlayModeChanged(int mode) {
|
||||
@@ -61,8 +51,6 @@ namespace RebootKit.Engine.Development {
|
||||
OnOverlayModeChanged(cvar.IndexValue);
|
||||
} else if (cvar == DebugCVars.ShowGameVersion) {
|
||||
m_GameVersionOverlay.gameObject.SetActive(cvar.IndexValue > 0);
|
||||
} else if (cvar == DebugCVars.ShowNetworkStats) {
|
||||
m_NetworkStatsOverlay.Visible = cvar.IndexValue > 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user