--- uid: input-system-control-state-history --- # Record control state history If you want to access the history of value changes on a control (for example, in order to compute exit velocity on a touch release), you can record state changes over time with [`InputStateHistory`](xref:UnityEngine.InputSystem.LowLevel.InputStateHistory) or [`InputStateHistory`](xref:UnityEngine.InputSystem.LowLevel.InputStateHistory`1). The latter restricts controls to those of a specific value type, which in turn simplifies some of the API. ```CSharp // Create history that records Vector2 control value changes. // NOTE: You can also pass controls directly or use paths that match multiple // controls (For example, "/