FLY_CONTROLS bindings (active in fly mode). WASD movement
keys with all 4 modifier combinations the fly controls
respect (none / Shift / Alt / Shift+Alt), arrow look keys
with optional Shift, and the Shift speed-boost binding.
Animation playback bindings (K / Home / End / Shift+↑ / Shift+↓,
registered in NAVIGATION). They decline until a dimension is selected
and the animation manager exists.
Ctrl/⌘+wheel FOV-vs-zoom exclusivity is NOT a key binding: each
wheel handler reads the event's own live modifier flags (see
luxar-orbit-controls/input/pointer.ts and luxar-fly-controls/input/
wheel.ts), so there is no held-key state to track or reconcile.
Wire every keyboard binding onto the provided context manager.
Three sub-flows live here, in order:
NAVIGATION bindings (default, orbit-mode UI shortcuts).
FLY_CONTROLS bindings (active in fly mode). WASD movement keys with all 4 modifier combinations the fly controls respect (none / Shift / Alt / Shift+Alt), arrow look keys with optional Shift, and the Shift speed-boost binding.
Animation playback bindings (K / Home / End / Shift+↑ / Shift+↓, registered in NAVIGATION). They decline until a dimension is selected and the animation manager exists.
Ctrl/⌘+wheel FOV-vs-zoom exclusivity is NOT a key binding: each wheel handler reads the event's own live modifier flags (see luxar-orbit-controls/input/pointer.ts and luxar-fly-controls/input/ wheel.ts), so there is no held-key state to track or reconcile.