GameInputGamepadInfo
Décrit les propriétés d’une manette.Syntaxe
Membres
supportedLayoutType : GameInputGamepadButtons Décrit la disposition de la manette. Comme les axes ont des traductions en boutons, celles-ci peuvent être utilisées pour déterminer quels axes sont présents sur la manette. menuButtonLabel
Type : GameInputLabel Étiquette physique du bouton Menu. viewButtonLabel
Type : GameInputLabel Étiquette physique du bouton Affichage. aButtonLabel
Type : GameInputLabel Étiquette physique du bouton A. bButtonLabel
Type : GameInputLabel Étiquette physique du bouton B. cButtonLabel
Type : GameInputLabel Étiquette physique du bouton C. xButtonLabel
Type : GameInputLabel Étiquette physique du bouton X. yButtonLabel
Type : GameInputLabel Étiquette physique du bouton Y. zButtonLabel
Type : GameInputLabel Étiquette physique du bouton Z. dpadUpLabel
Type : GameInputLabel Étiquette physique du pavé directionnel vers le haut. dpadDownLabel
Type : GameInputLabel Étiquette physique du pavé directionnel vers le bas. dpadLeftLabel
Type : GameInputLabel Étiquette physique du pavé directionnel vers la gauche. dpadRightLabel
Type : GameInputLabel Étiquette physique du pavé directionnel vers la droite. leftShoulderButtonLabel
Type : GameInputLabel Étiquette physique du bouton bombé gauche. rightShoulderButtonLabel
Type : GameInputLabel Étiquette physique du bouton bombé droit. leftThumbstickButtonLabel
Type : GameInputLabel Étiquette physique du joystick gauche. rightThumbstickButtonLabel
Type : GameInputLabel Étiquette physique du joystick droit. extraButtonCount
Type : uint32_t Nombre de boutons du périphérique qui ne sont pas mappés à des boutons de manette. extraAxisCount
Type : uint32_t Nombre d’axes du périphérique qui ne sont pas mappés à des axes de manette.
Remarques
Cette structure est utilisée dans la structure GameInputDeviceInfo.GameInputDeviceInfo est utilisée par la méthode IGameInputDevice::GetDeviceInfo.
Pour plus d’informations, consultez Périphériques GameInput.
Disposition de la manette
GameInput prend en charge une gamme de formats de manettes au lieu de limiter la prise en charge à une seule disposition standard. Cela est exposé par le membresupportedLayout de cette structure sous la forme d’un champ de bits de type GameInputGamepadButtons. Les axes sont également présents dans cette énumération par le biais des traductions d’axe en bouton, comme GameInputGamepadLeftTriggerButton. Pour plus d’informations sur ces traductions, consultez GameInputGamepadButtons.
Il n’existe aucune disposition minimale requise pour une manette, qui peut comporter n’importe quelle combinaison des axes et boutons pris en charge. Les boutons ou axes non pris en charge sont censés être laissés de côté et accessibles en tant qu’axes ou boutons supplémentaires.
Nous avons défini sous forme de constantes certains regroupements courants d’éléments de manette ainsi que des dispositions courantes. Ils peuvent être utilisés pour identifier rapidement une disposition courante, filtrer des entrées spécifiques ou créer des dispositions personnalisées. Pour plus d’informations, consultez GameInputGamepadButtons.
Comme l’éventail attendu de dispositions et de formats pris en charge est illimité, il existe un petit ensemble de considérations et de comportements que nous attendons des mappages et des utilisateurs de manettes :
- Pour les éléments présents en double, tels que les joysticks, les boutons bombés ou les gâchettes, si un seul est présent au centre, il doit par défaut être considéré comme l’élément gauche. S’il est positionné à gauche ou à droite du périphérique, il doit être mappé en conséquence.
- Afin d’éviter toute ambiguïté due à des glyphes différents, les boutons frontaux doivent être mappés et lus en fonction de leur position physique, quel que soit leur glyphe, comme suit :

Configuration requise
En-tête : GameInput.h Plateformes prises en charge : Windows, consoles de la famille XBOX One et consoles XBOX SeriesVoir aussi
Vue d’ensemble de GameInputGameInput
