merged RA/CncPerfDebugLogic
separate text and graph, fixes #3491 small repositions to fit with other widgets
This commit is contained in:
@@ -25,7 +25,6 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
rootMenu = widget;
|
||||
rootMenu.IsVisible = () => Menu == MenuType.Main;
|
||||
|
||||
Game.modData.WidgetLoader.LoadWidget( new WidgetArgs(), Ui.Root, "PERF_BG" );
|
||||
var versionLabel = Ui.Root.GetOrNull<LabelWidget>("VERSION_LABEL");
|
||||
if (versionLabel != null)
|
||||
versionLabel.GetText = WidgetUtils.ActiveModVersion;
|
||||
|
||||
@@ -15,21 +15,18 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
{
|
||||
public class PerfDebugLogic
|
||||
{
|
||||
public PerfDebugLogic()
|
||||
[ObjectCreator.UseCtor]
|
||||
public PerfDebugLogic(Widget widget)
|
||||
{
|
||||
var r = Ui.Root;
|
||||
var perfRoot = r.Get("PERF_BG");
|
||||
perfRoot.IsVisible = () => perfRoot.Visible && Game.Settings.Debug.PerfGraph;
|
||||
var perfGraph = widget.Get("GRAPH_BG");
|
||||
perfGraph.IsVisible = () => Game.Settings.Debug.PerfGraph;
|
||||
|
||||
// Perf text
|
||||
var perfText = perfRoot.Get<LabelWidget>("TEXT");
|
||||
var perfText = widget.Get<LabelWidget>("PERF_TEXT");
|
||||
perfText.IsVisible = () => Game.Settings.Debug.PerfText;
|
||||
perfText.GetText = () => "Render {0} ({5}={2:F1} ms)\nTick {4} ({3:F1} ms)".F(
|
||||
Game.RenderFrame,
|
||||
Game.NetFrameNumber,
|
||||
PerfHistory.items["render"].Average(Game.Settings.Debug.Samples),
|
||||
PerfHistory.items["tick_time"].Average(Game.Settings.Debug.Samples),
|
||||
Game.LocalTick,
|
||||
perfText.GetText = () =>
|
||||
"Tick {0} @ {1:F1} ms\nRender {2} @ {3:F1} ms\nBatches: {4}".F(
|
||||
Game.LocalTick, PerfHistory.items["tick_time"].Average(Game.Settings.Debug.Samples),
|
||||
Game.RenderFrame, PerfHistory.items["render"].Average(Game.Settings.Debug.Samples),
|
||||
PerfHistory.items["batches"].LastValue);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user