Hallo,
Het probleem waar ik mee zit is dat ik de device index van een XInput controller(X360 controller en wheel bijvoorbeeld) moet hebben. Alle controllers die op een PC zijn aangesloten worden via Direct Input op gesomt , hier bij wordt dan gekeken of dit een XInput Device is.
Het probleem is nu echter dat er meerdere XInput devices( tot maximaal vier) op een PC kunnen zijn aangesloten.
Uit deze opsomming wil ik echter ook het device id krijgen. Tot dusver zie ik geen mogelijkheid om dit te krijgen. Wat ik wel krijg is de naam van het device, maar hier heb ik niks aan omdat er meerdere aparaten met dezelfde naam aan de PC verbonden kunnen zijn, en je niet via XInput deze naam kan krijgen. Je hebt in XInput het device id nodig om de state van de knopen en dergelijken op te halen.
De applicatie die wordt ontwikkeld moet Direct Input en XInput ondersteunen. Het moet zowel joysticks en wheels ondersteunen, enkel onderscheid maken op type heeft geen zin omdat er meerdere wheels of controllers verbonden kunnen zijn met dezelfde naam.
De controlle om te kijken of een device een XInput device is wordt in C++ gedaan waarna de informatie hiervan aan een C# applicatie wordt gegeven. De C# applicatie zelf maakt gebruik van MDX en niet XNA, Xinput wordt door middel van Marshalling gedaan binnen de C# applicatie.
Het probleem waar ik mee zit is dat ik de device index van een XInput controller(X360 controller en wheel bijvoorbeeld) moet hebben. Alle controllers die op een PC zijn aangesloten worden via Direct Input op gesomt , hier bij wordt dan gekeken of dit een XInput Device is.
Het probleem is nu echter dat er meerdere XInput devices( tot maximaal vier) op een PC kunnen zijn aangesloten.
Uit deze opsomming wil ik echter ook het device id krijgen. Tot dusver zie ik geen mogelijkheid om dit te krijgen. Wat ik wel krijg is de naam van het device, maar hier heb ik niks aan omdat er meerdere aparaten met dezelfde naam aan de PC verbonden kunnen zijn, en je niet via XInput deze naam kan krijgen. Je hebt in XInput het device id nodig om de state van de knopen en dergelijken op te halen.
De applicatie die wordt ontwikkeld moet Direct Input en XInput ondersteunen. Het moet zowel joysticks en wheels ondersteunen, enkel onderscheid maken op type heeft geen zin omdat er meerdere wheels of controllers verbonden kunnen zijn met dezelfde naam.
De controlle om te kijken of een device een XInput device is wordt in C++ gedaan waarna de informatie hiervan aan een C# applicatie wordt gegeven. De C# applicatie zelf maakt gebruik van MDX en niet XNA, Xinput wordt door middel van Marshalling gedaan binnen de C# applicatie.
[ Voor 11% gewijzigd door NC83 op 25-09-2009 13:11 ]
ex-FE Programmer: CMR:DiRT2,DiRT 3, DiRT Showdown, GRID 2, Mad Max