Is there a way to identify that a device assigned is virtual?
I’d like to understand when the player is controlled with the gamepad that was created for the on-screen buttons
Those devices in particular have the “OnScreen” usage tagged onto them. For example, in a binding “{OnScreen}/buttonSouth” would specifically bind only to a gamepad created from on-screen controls.
In the API, you can query that from the InputControl.usages
property.
if (device.usages.Contains(x => x == "OnScreen"))
Debug.Log("On-Screen Device!");