Donc, une heure environ pour jouer et essayer différentes bibliothèques, et il semble que OIS (et SDL ) reconnaisse simplement le contrôleur comme un joystick et me fournit tout ce dont j'ai besoin.
Si vous installez OIS à partir du lien ci-dessus et créez / exécutez le projet «ConsoleTest», vous pouvez voir la sortie du contrôleur dans la fenêtre de débogage.
De plus, voici les énumérations que j'ai utilisées pour faire correspondre les numéros d'axes / boutons produits par SDL (notez pas OIS, que j'ai décidé de ne pas utiliser, les numérotations pourraient bien être les mêmes). Notez que les boutons de déclenchement ne sont pas classés comme un axe, ce que je suis sûr qu'ils devraient être (0-255 de mémoire):
//Values SDL attributes to individual PS3 axes
enum EPS3RawAxesIndex
{
EPS3RawAxesIndex_LeftX = 0,
EPS3RawAxesIndex_LeftY = 1,
EPS3RawAxesIndex_RightX = 2,
EPS3RawAxesIndex_RightY = 3
};
//Values SDL attributes to individual PS3 controller buttons
enum EPS3RawButtonIndex
{
EPS3RawButtonIndex_Select = 0,
EPS3RawButtonIndex_JoyClickLeft = 1,
EPS3RawButtonIndex_JoyClickRight = 2,
EPS3RawButtonIndex_Start = 3,
EPS3RawButtonIndex_DpadUp = 4,
EPS3RawButtonIndex_DpadRight = 5,
EPS3RawButtonIndex_DpadDown = 6,
EPS3RawButtonIndex_DpadLeft = 7,
EPS3RawButtonIndex_TriggerLeft = 8,
EPS3RawButtonIndex_TriggerRight = 9,
EPS3RawButtonIndex_ShoulderLeft = 10,
EPS3RawButtonIndex_ShoulderRight = 11,
EPS3RawButtonIndex_Triangle = 12,
EPS3RawButtonIndex_Circle = 13,
EPS3RawButtonIndex_Cross = 14,
EPS3RawButtonIndex_Square = 15,
EPS3RawButtonIndex_PSButton = 16
};