A savoir sur les Manettes de jeu

  • A. La gestion des informations électriques : une chaîne matérielle

    Le but ultime d’un périphérique de jeu est bien d’effectuer une action à l’écran, plus précisément d’interpréter une action ou un mouvement du joueur comme une commande dans un jeu vidéo. Il reste donc toute une chaîne de commandes à suivre entre la traduction électrique de l’action ou du mouvement du joueur et sa répercussion à l’écran.

    Comme on l’a vu, un périphérique de jeu est avant tout un ensemble de circuits électriques dans lesquels se produisent des variations de courant suffisantes pour être détectées et analysées. Les anciens périphériques de jeux connectés sur port jeu ou des interfaces similaires sur console laissaient le processeur central se charger de cette analyse, une fois les données électriques rendues intelligibles par le dispositif doté du port jeu, qu’il s’agisse d’une carte son ou de la carte mère, et notamment une fois toutes les données converties au format numérique.

    La carte son ou carte mère inspectait en fait l’état de chaque circuit du périphérique auquel elle était directement connectée, à une fréquence définie, dans la limite des capacités du processeur central. Le principal défaut de ce système était d’être sensible aux parasitages en de nombreux points et d’être de surcroît dépendant d’un trop grand nombre d’éléments. C’est pourquoi les périphériques USB (et assimilés, sur console) sont venus progressivement remplacer leurs prédécesseurs.

    Ces derniers ont pour principal avantage de s’occuper eux-mêmes du traitement de l’information électrique en disposant d’une part de convertisseurs ADC afin d’obtenir des données numériques à partir du déplacement des axes, et d’autre part d’un microprocesseur chargé de l’analyse des données. Ce microprocesseur, qui peut fonctionner à une fréquence importante (de l’ordre de plusieurs dizaines de MHz), va notamment former des paquets de données à envoyer à l’ordinateur ou la console en stockant les variations de l’état des commandes dans une mémoire tampon dont le contenu est envoyé 125 fois par seconde. En effet, un port USB fonctionne généralement à une fréquence de 125 Hz, il est donc impossible pour le périphérique d’envoyer des données à une fréquence plus élevée. L’intérêt d’une fréquence élevée pour le microprocesseur est avant tout de pouvoir gérer de multiples commandes à la fois. Ainsi les statuts des différentes commandes sont transmis à l’ordinateur ou la console auxquels il revient de les interpréter en tant qu’action dans un jeu.

    Haut de page
  • B. L’interprétation des informations transmises à l’ordinateur ou la console : une chaîne logicielle

    Le travail d’interprétation sera effectué en deux temps. Tout d’abord, les pilotes du périphérique viennent associer chaque donnée collectée à une commande, et reconstruisent ainsi les axes, boutons et commandes spécifiques du périphérique. Il est possible de les faire reconnaître en tant que telles, et, parfois, dans le cas des boutons, de les assigner à des touches du clavier, et ce pour des questions de compatibilité avec les jeux vidéo ne reconnaissant qu’un certain nombre de commandes. Il s’agit aussi d’effectuer certaines corrections, notamment sur les axes. En effet, les données envoyées par le périphérique sont brutes et correspondent aux déplacements des axes perçus par les capteurs. Il est par exemple possible de définir une zone morte qui correspond à l’ensemble des positions de part et d’autre de la position initiale, ensemble dans lequel les mouvements seront considérés nuls.

    On peut aussi influer sur la sensibilité d’une commande et sur sa courbe de réponse. Théoriquement, la courbe de réponse d’une commande est linéaire : tout déplacement de la commande entraîne une réponse proportionnelle à l’écran. Il est cependant possible de modifier cette courbe pour, par exemple augmenter ou diminuer la sensibilité de la commande lorsqu’elle est proche de sa position initiale ou vers la fin de sa zone de déplacement, proche de sa position extrême. L’intérêt est essentiellement de privilégier la précision sur une zone précise, comme par exemple le début de la zone de déplacement d’un accélérateur, ou la fin de celle d’un frein, sur un pédalier de volant. L’accès à ce type de paramétrages dans la couche logicielle du périphérique est cependant généralement impossible sur console.

    Ces paramétrages sont cependant souvent accessibles dans le jeu vidéo lui-même, sur ordinateur ou console, qui constitue une nouvelle couche logicielle. C’est cette dernière qui assure la correspondance entre les commandes reconnues et leur action finale à l’écran. Il est ainsi possible d’y définir quel sera le résultat de la pression d’une commande, par un jeu d’associations entre commandes et actions disponibles.

    Dans les jeux, chaque personnage ou objet est placé dans l’espace (en 2D ou 3D) suivant des coordonnées géométriques sur deux ou trois axes. C’est notamment à partir de ces coordonnées que vos actions sur le périphérique vont avoir des répercussions. Les informations de mouvement transmises sont interprétées comme des modifications de ces coordonnées et reproduites visuellement par le moteur d’affichage du jeu. Le principe est le même avec les commandes activées qui vont de leur côté entraîner des actions dans le jeu, elles aussi reproduites visuellement.

    La boucle est donc bouclée, nous sommes bien partis de l’action du joueur sur une commande physique pour en arriver à une réponse à l’écran par une succession de chaînes matérielles et logicielles.

    Haut de page
Liens sponsorisés