Skip to content

Control Rig Dependency Navigator

Module: Animation · Category: ControlRig · Tool ID: ControlRigDependencyNavigator

The deeper sibling of Control Rig Inspector. Beyond top-level node counts, this tool analyzes graph depth, backward-solve usage, and cross-rig variable references — built entirely via reflection so it doesn’t pull in the Control Rig module as a dependency. Includes a summary dashboard with aggregate stats and per-rig drill-in.

Screenshot 01 — Hero shot — Navigator open with rigs list and variables list both populated, summary dashboard showing aggregate stats, mixed severity coding visible.


  • Investigating “why is this rig slow?” beyond just node count
  • Refactoring a rig and wanting to see which AnimBPs / other rigs reference its variables
  • Auditing a project’s full rig stack — the summary dashboard gives a one-glance picture
  • Pre-merge review when a teammate has updated a shared Control Rig
  • Don’t use this for the quick “what rigs do I have?” check — Control Rig Inspector is faster for that
  • Don’t expect graph rendering — it inspects via reflection, doesn’t render the rig graph itself

  1. Open the EQLabs Hub and search for Control Rig Dependency (or browse to Animation → ControlRig)
  2. Click the tool card
  3. Click Scan Rigs to walk every Control Rig asset in the project

SectionWhat it does
Scan PathFolder to recursively scan. Default /Game.
Warning ThresholdNode count for Warning severity. Default 50.
Critical ThresholdNode count for Critical severity. Default 100.
Scan Rigs buttonWalks every Control Rig Blueprint via reflection
Summary dashboardTotal rigs, average nodes, most-complex rig name, total issue count
Rigs list (sortable)Per-rig row: name, node count, variable count, graph count, estimated depth, backward-solve flag, severity, issues
Variables listPer-variable row: name, type, list of rigs that reference it, exposed-to-AnimBP flag
FieldWhat it shows
Total RigsCount of Control Rig assets found under the scan path
Average NodesMean node count across all rigs
Most ComplexName of the rig with the highest node count
Issue CountTotal Warning + Critical entries
SeverityMeaning
OKBelow Warning Threshold, no other issues
WarningCrossed Warning Threshold, or has unusual configurations (e.g., backward-solve enabled with high node count)
CriticalCrossed Critical Threshold, or multiple severe issues

Screenshot 02 — Summary + rig list — Summary block at top showing the dashboard fields, rigs list sorted descending by node count below.


Defaults (Warning: 50, Critical: 100) suit most projects. Tighten for performance-critical (mobile / VR) projects, loosen for AAA character work.

Click Scan Rigs. The summary dashboard, rigs list, and variables list all populate.

The Most Complex rig is your usual top investigation target. Issue Count tells you how big the cleanup effort is.

Click a rig in the rigs list to filter the Variables list to just the variables that rig uses. This is the cross-reference workflow — see at a glance which variables are shared and which are local.

The Variables list shows you, per variable, which rigs reference it. A variable used by 5+ rigs is shared infrastructure; deleting or renaming it has wider impact than it looks.


FieldWhat it doesDefault
Scan PathFolder to recursively scan/Game
Warning ThresholdNode count for Warning severity50
Critical ThresholdNode count for Critical severity100

Settings are persisted to [Project]/Saved/EQLabs/Settings/ControlRigDependencyNavigator.json.


  • In-panel results — summary, rigs list, variables list (cleared on each rescan)
  • No edits — read-only analysis

  • Reflection-only inspection means no Control Rig module dependency — counts are accurate but the Navigator doesn’t render the actual graph; for that, double-click a rig to open it in the Control Rig editor.
  • “Estimated graph depth” is heuristic — it’s a best-effort estimate via reflection, not a precise traversal of the execution path.
  • A backward-solve flag isn’t bad on its own — but combined with high node count, it usually signals a rig doing too many things. Worth a refactor look.
  • Variables exposed to AnimBP are a contract — renaming or removing them breaks downstream AnimBPs. The variables list flags which variables fall in this category.
  • Sortable column headers — click any column to sort. Default sort is by node count, descending.


Report an issue with this tool

Opens our feedback form in a new tab with the tool name pre-filled.