public void Update(double deltaSec) { foreach (var system in LogicSystems) { if (system.IsEnabled) { system.Update(deltaSec); CommandRecorder.Execute(World); } } }
public void Update(double deltaSec) { foreach (var system in PreLogicSystems) { var stopwatch = Stopwatch.StartNew(); if (system.IsEnabled) { system.PreUpdate(deltaSec); CommandRecorder.Execute(World); } stopwatch.Stop(); if (stopwatch.Elapsed.TotalMilliseconds > 1) { Utilties.Logging.Metrics.LogMetric($"LogicSystems:{system.GetType().Name}:Time", stopwatch.Elapsed.TotalMilliseconds, TimeSpan.FromSeconds(5)); } } foreach (var system in LogicSystems) { var stopwatch = Stopwatch.StartNew(); if (system.IsEnabled) { system.Update(deltaSec); CommandRecorder.Execute(World); } stopwatch.Stop(); if (stopwatch.Elapsed.TotalMilliseconds > 1) { Utilties.Logging.Metrics.LogMetric($"LogicSystems:{system.GetType().Name}:Time", stopwatch.Elapsed.TotalMilliseconds, TimeSpan.FromSeconds(5)); } } foreach (var system in PostLogicSystems) { var stopwatch = Stopwatch.StartNew(); if (system.IsEnabled) { system.PostUpdate(deltaSec); CommandRecorder.Execute(World); } stopwatch.Stop(); if (stopwatch.Elapsed.TotalMilliseconds > 1) { Utilties.Logging.Metrics.LogMetric($"LogicSystems:{system.GetType().Name}:Time", stopwatch.Elapsed.TotalMilliseconds, TimeSpan.FromSeconds(5)); } } }