#
Timer Inspector Overlay
The included UMG widget provides a real-time debug view of all active timers in a ListView interface with filtering and auto-refresh.
#
Features
#
Integration
#
Step 1 — Bind an Input Action
In your PlayerController, bind an input action (e.g., F9) using Enhanced Input to toggle the inspector overlay.
#
Step 2 — Create the Widget
On toggle, the PlayerController creates the inspector widget and adds it to the viewport. Pass a reference to the Timer Suite component via InitializeWithTimerSuite.
#
Step 3 — Pass the Component Reference
Once InitializeWithTimerSuite is called with the component reference, the widget will begin polling for snapshots automatically.
Production Builds
The overlay can remain enabled in shipping builds and simply be toggled off by default. This allows QA and internal testers to enable it with the hotkey without any additional build configuration.
#
Bootstrap Initialization
On initial load, the widget may open before replication delivers the first timer state. To handle this, implement a brief retry loop that polls GetAllTimerSnapshots until results are non-empty, then switches to normal auto-refresh.
Why This Is Needed
The Timer Suite component may not have received its first replication update by the time the widget opens. The bootstrap retry ensures the inspector doesn't display an empty list and silently miss the initial state.
#
Recommended Refresh Rate
Set the auto-refresh interval to 0.25–0.5 seconds for a responsive display without excessive update overhead. See Performance Notes for more detail.
AfterPrime Systems — Building the Gameplay Foundation