public static SteamControllerDevice[] OpenControllers() { List <SteamControllerDevice> controllers = new List <SteamControllerDevice> (); IntPtr pEnum = SteamControllerLib.EnumControllerDevices(); while (pEnum != IntPtr.Zero) { IntPtr pDevice = SteamControllerLib.Open(pEnum); if (pDevice != IntPtr.Zero) { controllers.Add(new SteamControllerDevice(pDevice)); } pEnum = SteamControllerLib.NextControllerDevice(pEnum); } return(controllers.ToArray()); }