b3d-controllable
Base class for any entity that can be driven by a ControlInput — bipeds, cars,
helicopters, boats, etc.
Subclasses override applyInput(input, dt) with their specific movement model.
The base class handles the update loop: poll input → apply input.
Key Methods
applyInput(input, dt)— override with movement/animation logicgetCameraTarget()— returns the node cameras should followonGainFocus()/onLoseFocus()— lifecycle hooks for input switching