[..] Détection boutons manette

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

[..] Détection boutons manette

#1

Message par TommyDDR »

Bonjour à tous,

Je viens demander l'aide de ceux qui passeront par là en ayant une manette branchée à leur PC.

Pouvez-vous lancer le code suivant en m'indiquant :
1) Votre OS
2) La manette utilisée
2) Si les touches sont détectées lorsque la fenêtre est active
3) Si les touches sont détectées lorsqu'une autre fenêtre est active

Merci d'avance !

Je tiendrai un tableau des tests ici :

Code : Tout sélectionner

OS      | Pad                    | Active | Non active | Pseudos
--------|------------------------|--------|------------|------------------
Win10   | PS2                    | 1      | 1          | TommyDDR
Win10   | PS3                    | 1      | 1          | TommyDDR
Win10   | PS4                    | 1      | 1          | TommyDDR / Joebar
Win10   | XBOX360                | 1      | 1          | TommyDDR
Win10   | XBOXOne                | 1      | 0          | TommyDDR
Win10   | Logitech ChillStream   | 1      | 1          | TommyDDR
Win10	| Nacon GC               | 1      | 1          | Franco

Code : Tout sélectionner

                                                                      Logitech 
Bouton   | XBOX 360  | XBOX One  | PS2       | PS3       | PS4       |ChillStream| Nacon GC    |
0        | A         | A         | Triangle  | Croix     | Carre     | A         | 1 (vert)    |
1        | B         | B         | Rond      | Rond      | Croix     | B         | 2 (rouge)   |
2        | X         | X         | Croix     | Carre     | Rond      | X         | 3 (bleu)    |
3        | Y         | Y         | Carre     | Triangle  | Triangle  | Y         | 4 (jaune)   |
4        | L1        | L1        | L2        | L1        | L1        | L1        | L1          |
5        | R1        | R1        | R2        | R1        | R1        | R1        | R1          |
6        | Select    | Select    | L1        | Select    | L2        | Select    | Select      |
7        | Start     | Start     | R1        | Start     | R2        | Start     | Start       |
8        | L3        | L3        | Select    | L3        | Select    | L3        | L3          |
9        | R3        | R3        | L3        | R3        | Start     | R3        | R3          |
10       |           |           | R3        |           | L3        |           |             |
11       |           |           | Start     |           | R3        |           |             |
12       | Haut      | Haut      | Haut      | Haut      | Haut      | Haut      | Haut        |
13       | Droite    | Droite    | Droite    | Droite    | Droite    | Droite    | Droite      |
14       | Bas       | Bas       | Bas       | Bas       | Bas       | Bas       | Bas         |
15       | Gauche    | Gauche    | Gauche    | Gauche    | Gauche    | Gauche    | Gauche      |
mId      | 1118      | 1118      | 3727      | 1118      | 1356      | 1133      | 1118        |
pId      | 654       | 767       | 4102      | 654       | 1476      | 49730     | 654         |
caps     | 55        | 55        | 51        | 55        | 63        | 55        | 55          |
maxAxes  | 6         | 6         | 6         | 6         | 6         | 6         | 6           |
numAxes  | 5         | 5         | 4         | 5         | 6         | 5         | 5           |
maxBut   | 32        | 32        | 32        | 32        | 32        | 32        | 32          |
numBut   | 10        | 10        | 12        | 10        | 14        | 10        | 10          |
#include <Array.au3>
#include <GUIConstantsEx.au3>
#include <Math.au3>
#include <String.au3>

Opt("GUIOnEventMode", 1)
Opt("MustDeclareVars", 1)

Global $gui
Global $edit
Global $size = [600, (1 + 16 + 1 + 8 + 1 + 1)*13 + 6]
Global $oldData = ""
Global $numDevs = _GetNumDevs()
Global $capsData = [[0, "mId"], [1, "pId"], [18, "caps"], [19, "maxAxes"], [20, "numAxes"], [21, "maxBut"], [9, "numBut"]]
Global $pIDs = [[654, "XBOX360"], [767, "XBOXOne"], [4102, "PS2"], [1476, "PS4"], [49730, "Logitech"]]

$gui = GUICreate("joy", $size[0], $size[1])
GUISetOnEvent($GUI_EVENT_CLOSE, quit, $gui)
$edit = GUICtrlCreateEdit("", 0, 0, $size[0], $size[1], 0)
GUICtrlSetState($edit, $GUI_DISABLE)
GUICtrlSetFont($edit, Default, Default, Default, "Courier")
GUISetState(@SW_SHOW, $gui)

While 1
   Local $space = 8
    Local $txt = " Bouton |"
   Local $separator = _StringRepeat("-", $space) & "|"
    Local $touches[$numDevs][0]
   Local $caps[$numDevs][0]
    Local $padValid[$numDevs]
    For $i = 0 To $numDevs - 1
        Local $tches = _GetJoy($i)
        $padValid[$i] = Not(@error)
      If($padValid[$i]) Then
         $tches = _JoyToBool($tches)
         set($touches, $tches, $i)
         Local $cap = _GetJoyCaps($i)
         set($caps, $cap, $i)
         $txt &= " " & StringFormat("%-" & $space - 1 & "s", "Pad " & $i) & "|"
         $separator &= _StringRepeat("-", $space) & "|"
      EndIf
   Next
    $txt &= @CRLF
    For $i = 0 To UBound($touches, 2) - 1
        $txt &= StringFormat("%" & $space - 1 & "s", $i) & " |"
        For $j = 0 To UBound($touches, 1) - 1
            If($padValid[$j]) Then
                $txt &= _StringRepeat(" ", Ceiling(($space-1)/2)) & ($touches[$j][$i] ? "1" : " ") & _StringRepeat(" ", Floor(($space-1)/2)) & "|"
            EndIf
        Next
        $txt &= @CRLF
    Next
   $txt &= $separator & @CRLF
   For $i = 0 To UBound($capsData, 1) - 1
        $txt &= StringFormat("%" & $space - 1 & "s", $capsData[$i][1]) & " |"
        For $j = 0 To UBound($touches, 1) - 1
            If($padValid[$j]) Then
                $txt &= StringFormat("%" & $space - 1 & "s", $caps[$j][$capsData[$i][0]]) & " |"
            EndIf
        Next
        $txt &= @CRLF
   Next
   $txt &= $separator & @CRLF
    $txt &= " " & StringFormat("%-" & $space - 1& "s", "Nom") & "|"
    For $j = 0 To UBound($touches, 1) - 1
      If($padValid[$j]) Then
         Local $index = _ArraySearch($pIDs, $caps[$j][1], 0, 0, 0, 0, 1, 0)
         Local $padName = ($index < 0) ? "INCONNU" : $pIDs[$index][1]
         $txt &= StringFormat("%-" & $space & "s", $padName) & "|"
      EndIf
   Next
   $txt &= @CRLF
    If($oldData <> $txt) Then
        $oldData = $txt
        GUICtrlSetData($edit, $txt)
    EndIf
    Sleep(1)
WEnd

Func _JoyToBool($array)
   Local $touches[16]
   $touches[0] = BitAND($array[7], 1) <> 0
   $touches[1] = BitAND($array[7], 2) <> 0
   $touches[2] = BitAND($array[7], 4) <> 0
   $touches[3] = BitAND($array[7], 8) <> 0
   $touches[4] = BitAND($array[7], 16) <> 0
   $touches[5] = BitAND($array[7], 32) <> 0
   $touches[6] = BitAND($array[7], 64) <> 0
   $touches[7] = BitAND($array[7], 128) <> 0
   $touches[8] = BitAND($array[7], 256) <> 0
   $touches[9] = BitAND($array[7], 512) <> 0
   $touches[10] = BitAND($array[7], 1024) <> 0
   $touches[11] = BitAND($array[7], 2048) <> 0
   $touches[12] = StringLen($array[6]) > 0 And ($array[6] < 9000 Or $array[6] > 27000 And $array[6] < 65535)
   $touches[13] = StringLen($array[6]) > 0 And ($array[6] > 0 And $array[6] < 18000)
   $touches[14] = StringLen($array[6]) > 0 And ($array[6] > 9000 And $array[6] < 27000)
   $touches[15] = StringLen($array[6]) > 0 And ($array[6] > 18000 And $array[6] < 36000)
   Return $touches
EndFunc

Func _GetNumDevs()
    Local $ret

    $ret = DllCall("Winmm.dll", "int", "joyGetNumDevs")

    If(Not(@error)) Then
      $ret = $ret[0]
   EndIf
   Return $ret
EndFunc

Func _GetJoy($iJoy)
   Local $joy = _JoyInit()
    Local $ret
   Local $err = False
    Local $coor[9]

   $ret = DllCall("Winmm.dll", "int", "joyGetPosEx", "int", $iJoy, "ptr", DllStructGetPtr($joy))

    If(Not(@error) And $ret[0] == 0) Then
      $coor[0]    = DllStructGetData($joy,1,3)
      $coor[1]    = DllStructGetData($joy,1,4)
      $coor[2]    = DllStructGetData($joy,1,5)
      $coor[3]    = DllStructGetData($joy,1,6)
      $coor[4]    = DllStructGetData($joy,1,7)
      $coor[5]    = DllStructGetData($joy,1,8)
      $coor[6]    = DllStructGetData($joy,1,11)
      $coor[7]    = DllStructGetData($joy,1,9)
      $coor[8]    = DllStructGetData($joy,1,10)
   Else
      $err = True
;~    ConsoleWrite($ret[0] & @CRLF)
    EndIf
   $joy = 0
    Return SetError($err, 0, $coor)
EndFunc

Func _JoyInit()
    Local $joy
    Global $JOYINFOEX_struct    = "dword[13]"
    $joy    = DllStructCreate($JOYINFOEX_struct)
    if @error Then Return 0
    DllStructSetData($joy,1,DllStructGetSize($joy),1);dwSize = sizeof(struct)
    DllStructSetData($joy,1,255,2)                  ;dwFlags = GetAll
    return $joy
EndFunc

Func _GetJoyCaps($iJoy)
    Local $retour[24]
   Local $err = False
    Local $ret
   Local $joycap = _JoyCapsWInit()

    $ret = DllCall("Winmm.dll", "int", "joyGetDevCapsW", "int", $iJoy, "ptr", DllStructGetPtr($joycap), "int", DllStructGetSize($joycap))

    If(Not(@error) And $ret[0] == 0) Then
      For $i = 0 To UBound($retour, 1) - 1
         $retour[$i] = DllStructGetData($joycap, $i+1)
      Next
   Else
      $err = True
   EndIf
   $joycap = 0
   Return SetError($err, 0, $retour)
EndFunc

Func _JoyCapsWInit()
   local $JOYCAPS_struct = "WORD  wMid;WORD  wPid;WCHAR szPname[32];UINT  wXmin;UINT  wXmax;UINT  wYmin;UINT  wYmax;UINT  wZmin;" & _
                     "UINT  wZmax;UINT  wNumButtons;UINT  wPeriodMin;UINT  wPeriodMax;UINT  wRmin;UINT  wRmax;UINT  wUmin;" & _
                     "UINT  wUmax;UINT  wVmin;UINT  wVmax;UINT  wCaps;UINT  wMaxAxes;UINT  wNumAxes;UINT  wMaxButtons;" & _
                     "WCHAR szRegKey[32];WCHAR szOEMVxD[260]"
   Local $joycap = DllStructCreate($JOYCAPS_struct)
   if @error Then Return 0
    return $joycap
EndFunc

Func set(ByRef $array, $add, $indice)
   If(Not(IsArray($array) And IsArray($add))) Then Return SetError(1, 0, -1)
   Local $ubound = _Max(UBound($array, 2), UBound($add, 1))
   ReDim $array[UBound($array, 1)][$ubound]
   ReDim $add[$ubound]
   For $j = 0 To UBound($array, 2)-1
      $array[$indice][$j] = $add[$j]
   Next
EndFunc

Func quit()
    Exit
EndFunc
PS : S'il y a déjà des résultats pour les données que vous avez, mettez quand même vos réponses, cela permettra de savoir combien de personnes ont testé.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#2

Message par franco »

Salut :)

Je participe :=)

Facile pour moi, c'est rare que ma manette est débranchée...
Par contre, ma manette, qui remplace la manette XBox one, n'est pas une manette XBox one


Je suis sous Windows 10, 64 bits, famille
Ma manette : Nacon BB5022Red (Nacon GC)

Image : https://media.ldlc.com/r1600/ld/product ... 4194_2.jpg


Les boutons de droite (action, etc) :
-----------------------------------
-> Le bouton 1 (vert) correspond sur l'interface au bouton 0
-> Le bouton 2 (rouge) correspond sur l'interface au bouton 1
-> Le bouton 3 (bleu) correspond sur l'interface au bouton 2
-> Le bouton 4 (jaune) correspond sur l'interface au bouton 3

Les bouton Back / Start :
-----------------------
-> Le bouton Back correspond sur l'interface au bouton 6
-> Le bouton Start correspond sur l'interface au bouton 7

Les boutons du dessus :
---------------------
-> Le bouton LB correspond sur l'interface au bouton 4
-> Le bouton RB correspond sur l'interface au bouton 5
-> Le bouton LT ne correspond à aucun bouton sur l'interface
-> Le bouton RT ne correspond à aucun bouton sur l'interface

Appui sur les Joystics :
-----------------------
-> Le joystic de gauche correspond sur l'interface au bouton 8
-> Le joystic de droite correspond sur l'interface au bouton 9

Le pavé directionnel :
--------------------
-> Haut correspond sur l'interface au bouton 12
-> Droite correspond sur l'interface au bouton 13
-> Bas correspond sur l'interface au bouton 14
-> Gauche correspond sur l'interface au bouton 15


Le bouton du milieu aussi, ne correspond à aucun bouton sur l'interface.

Le test a été réalisé avec l'interface active.
Le test a été réalisé en écrivant ce texte (sublime text active donc)


J'ai une question ( suis curieux ) : tu vas faire un tel script pourquoi faire ?
Pour créer un outil permettant de reconfigurer les boutons et/ou de réinitialiser ?




++
L'entraide, c'est mon dada ;)
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Détection boutons manette

#3

Message par TommyDDR »

Merci pour toutes ces infos Franco !
J'ai mis à jour le script pour récupérer plus d'informations de la manette, et j'ai ajouté un nouveau tableau au 1er post.

Je compte en effet pouvoir mapper les touches de la manette à tout et n'importe quoi (un peu à la Joy2Key)
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#4

Message par franco »

Lu
Je compte en effet pouvoir mapper les touches de la manette à tout et n'importe quoi (un peu à la Joy2Key)
Oh putn.... Tu me plais toi :mrgreen:

Serait-il possible que, sur un jeu qui propose la manette, mais que ça fonctionne pas, ton script permet de configurer la dite manette ?

Dis, rassure moi, quand ton script sera fini, tu vas pas le garder pour toi ? :oops:


Pour information :
-> Les deux touces du haut LT et RT ne fonctionnent toujours pas sur le script.
-> Seul les boutons 10 et 11 de ton tableau sur l'interface, ne sont pas configurés.


Si ça peut t'aider


^^++
L'entraide, c'est mon dada ;)
JoeBar
Niveau 2
Niveau 2
Messages : 23
Enregistré le : sam. 26 oct. 2019 10:20
Status : Hors ligne

Re: [..] Détection boutons manette

#5

Message par JoeBar »

Salut, je confirme, tout fonctionne comme indiqué dans le 1er post ;)

W10, fonctionne au 1er plan et en arrière-plan. Manette de PS4.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Détection boutons manette

#6

Message par TommyDDR »

@Franco, oui, je partagerai le script ^^
LT et RT sont géré différemment selon les manettes, la PS4 et PS2 renvoient 2 informations : bouton appuyé ou non ET (dans une autre variable), la valeur de la résistance variable (pour savoir si on appuie un peu ou beaucoup).
Cette seconde variable n'est pas affichée dans mon interface, mais je le récupère bien.

Merci JoeBar.

Si vous pouviez tous les 2 me donner les valeurs du bas du dernier programme (mID, pId, etc), ça serait top !
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#7

Message par franco »

Salut.

J'ai obtenu
► Afficher le textececi
J'ai une question (encore oui XD) : comment fait-on pour récupérer le code hexadecimal d'un bouton appuyé ?

Et merci de ta réponse. ;)


++
L'entraide, c'est mon dada ;)
JoeBar
Niveau 2
Niveau 2
Messages : 23
Enregistré le : sam. 26 oct. 2019 10:20
Status : Hors ligne

Re: [..] Détection boutons manette

#8

Message par JoeBar »

PS4.png
PS4.png (1.54 Kio) Vu 4803 fois
:)
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#9

Message par franco »

Lu'

J'y pense : j'ai une manette pro nintendo switch, tu penses que ça fonctionnera ?

Là, je ne peux pas tester pour le moment (ménage oblige XD).


Dès que je peux, je teste.
BIen que je pense que c'est peine perdu, mais je risque rien ^^


++
L'entraide, c'est mon dada ;)
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Détection boutons manette

#10

Message par TommyDDR »

Qu'entends-tu par "le code hexa de la touche" ?

Je veux bien que tu testes avec la manette de switch ! si elle est détecté par ton PC et que tout est fonctionnel dans joy.cpl (démarrer / exécuter / joy.cpl), il devrait y avoir un résultat dans le programme.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#11

Message par franco »

Salut.
Qu'entends-tu par "le code hexa de la touche" ?
Justement, je me suis mal exprimé ;)

J'ai parlé hexadecimal, alors que cela n'en est pas... XD

Code : Tout sélectionner

        $touches[0] = BitAND($array[7],2) <> 0
        $touches[1] = BitAND($array[7], 1) <> 0
        $touches[2] = BitAND($array[7], 4) <> 0
        $touches[3] = BitAND($array[7], 8) <> 0
        $touches[4] = BitAND($array[7], 16) <> 0
        $touches[5] = BitAND($array[7], 32) <> 0
        $touches[6] = BitAND($array[7], 64) <> 0
        $touches[7] = BitAND($array[7], 128) <> 0
        $touches[8] = BitAND($array[7], 256) <> 0
        $touches[9] = BitAND($array[7], 512) <> 0
        $touches[10] = BitAND($array[7], 1024) <> 0
        $touches[11] = BitAND($array[7], 2048) <> 0
En fait, je voulais savoir s'il n'existe pas un outil permettant d'obtenir les valeurs que tu as mis (les puissances de 2).

J'ai laissé parlé ma curiosité ;)
Je veux bien que tu testes avec la manette de switch ! si elle est détecté par ton PC et que tout est fonctionnel dans joy.cpl (démarrer / exécuter / joy.cpl), il devrait y avoir un résultat dans le programme.
Comme je le craignais : ça ne fonctionne pas...

Elle fonctionne que sur la swtich...
Bien qu'elle apparait bien via joy.cpl.

Mais quelque soit le bouton, il est inactif.


De plus : https://www.jeuxactu.com/la-manette-pro ... 108273.htm

Je vais devoir l'appareil via bluetooth pour tester.
Sur pc, le cable ne fait que la charger.


++
L'entraide, c'est mon dada ;)
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Détection boutons manette

#12

Message par TommyDDR »

En fait, ce qu'il y a dans $array, c'est le retour direct de la manette, et dans $Array[7], ce sont les boutons appuyés (la manette map les boutons à des bits)
Exemple : si la manette renvoie 847, ça correspond à 1101001111, qui correspond aux touches : 0 1 2 3 6 8 9 et donc à A, B, X, Y, Select, L3, R3.
Donc la seule façon de récupérer l'information de chaque touche c'est avec BitAnd.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#13

Message par franco »

Ok merci...

par contre, je vais bientôt revenir vers toi......... Ma manette a les deux modes : Xinput et DirectInput

Et donc, vu que la manette était considérée comme une manette de XBOX360... j'étais donc en Xinput...

Pourquoi je parle de ça : parce que, dans l'autre "mode", ce n'est pas la même chose...


Je reviendrais donc avec d'autres informations. ^^
++
L'entraide, c'est mon dada ;)
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#14

Message par franco »

Yo.

Bon...

En mode "DirectInput" : TOUT FONCTIONNE !

Par contre, tu verras, il y'a juste une inversion, rapport au mode "XInput", je vais te le mettre en gras rouge.

Les boutons de droite (action, etc) :
-----------------------------------
-> Le bouton 2 (rouge) correspond sur l'interface au bouton 0
-> Le bouton 1 (vert) correspond sur l'interface au bouton 1

-> Le bouton 3 (bleu) correspond sur l'interface au bouton 2
-> Le bouton 4 (jaune) correspond sur l'interface au bouton 3

Les bouton Back / Start :
-----------------------
-> Le bouton Back correspond sur l'interface au bouton 8
-> Le bouton Start correspond sur l'interface au bouton 9

Les boutons du dessus :
---------------------
-> Le bouton LB correspond sur l'interface au bouton 4
-> Le bouton RB correspond sur l'interface au bouton 5
-> Le bouton LT correspond sur l'interface au bouton 6
-> Le bouton RT correspond sur l'interface au bouton 7

Appui sur les Joystics :
-----------------------
-> Le joystic de gauche correspond sur l'interface au bouton 10
-> Le joystic de droite correspond sur l'interface au bouton 11

Le pavé directionnel :
--------------------
-> Haut correspond sur l'interface au bouton 12
-> Droite correspond sur l'interface au bouton 13
-> Bas correspond sur l'interface au bouton 14
-> Gauche correspond sur l'interface au bouton 15


et :

Code : Tout sélectionner

 Bouton | Pad 0  |
      0 |        |
      1 |        |
      2 |        |
      3 |        |
      4 |        |
      5 |        |
      6 |        |
      7 |        |
      8 |        |
      9 |        |
     10 |        |
     11 |        |
     12 |        |
     13 |        |
     14 |        |
     15 |        |
--------|--------|
    mId |   4553 |
    pId |  22000 |
   caps |     51 |
maxAxes |      6 |
numAxes |      4 |
 maxBut |     32 |
 numBut |     12 |
--------|--------|
 Nom    |INCONNU |
L'entraide, c'est mon dada ;)
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Détection boutons manette

#15

Message par TommyDDR »

Je ne connais pas trop le mode Direct Input, je sais juste qu'il est plus complexe à mettre en place dans un programme, mais que c'est ce qui est recommandé (XInput n'est plus maintenu il me semble)

Étrange pour le mapping différent..
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 342
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Détection boutons manette

#16

Message par franco »

Salut.
Étrange pour le mapping différent..
C'est donc pour ça que, quand je joue à Rocket league, sur switch ou pc, il a y une inversion dans 2 boutons.

C'est dû à directinput.


++
L'entraide, c'est mon dada ;)
Répondre