ViewModel Controls
RAV automatically discovers ViewModel inputs from loaded animations and renders them as native controls in the right panel.

ViewModel Section
Enum dropdowns, number inputs, boolean checkboxes, color picker with alpha slider, string inputs, and collapsible nested VM instances — all auto-discovered from the loaded animation.
State Machine Section
Boolean, number, and trigger inputs discovered from the active state machine, synchronized with the running runtime.
Supported Input Types
| Type | Control | Behavior |
|---|---|---|
| Boolean | Checkbox | Immediately updates the runtime value |
| Number | Text input | Accepts decimal values, updates on blur or Enter |
| String | Text input | Updates on blur or Enter |
| Trigger | Button | Fires the trigger once per click |
| Enum | Dropdown | Lists all enum values, selects immediately |
| Color | Color picker + alpha | Native color input with alpha slider |
Nested ViewModels
When a ViewModel contains nested properties, RAV renders them as collapsible sections with depth-colored accent bars. The root starts expanded; nested sections start collapsed.
Live Sync
Controls continuously sync with the runtime. If a value changes from animation logic, the UI updates automatically. Active focused inputs are skipped during sync to avoid disrupting edits.
Value Persistence
When you reset or restart an animation, RAV captures all ViewModel and state machine values and restores them after reload. Triggers are excluded since they are one-shot actions.
ViewModel Labels
Section headers display the exact name from the Rive file, preserving original casing, dashes, and special characters.