Aller plus loin : comprendre comment fonctionnent les périphériques de jeux

Url : http://www.bestofmicro.com/guide/savoir-Manette-de-jeu,5-aWRHdWlkZT04NSZpZENsYXNzZXVyPTE1MA==.html le 29/11/2007 à 11:45:34

Les principes de base d’un périphérique de jeu

La fonction d’un périphérique de jeu

La fonction d’un périphérique de jeu est simple : il doit transcrire les actions de l’utilisateur, ici du joueur, en un signal électrique compréhensible par l’ordinateur ou la console, lesquels devront interpréter ce signal et le transposer en une action à l’écran.

Ce principe est en réalité le même que celui d’un clavier ou d’une souris, qui sont également des périphériques d’entrée assurant l’interface avec l’utilisateur ; on parle parfois de périphériques HID, pour « Human Interface Device », périphérique d’interface avec l’homme. La spécificité d’un périphérique de jeu, et son intérêt par rapport à un clavier ou une souris, est avant tout sa forme, sa conception. L’objectif d’un périphérique de jeu est de venir suppléer aux carences des périphériques de base, parfois peu adaptés à une utilisation ludique. Le joueur pourra ainsi y trouver un plus grand plaisir, tout en profitant d’un réalisme accru : il paraît logique que l’immersion dans un jeu de course soit nettement mieux assurée par un volant à retour de force que par un clavier.

Le bouton : principe et fonctionnement

Comme un clavier est essentiellement composé de touches, un périphérique de jeu est à la base essentiellement composé de boutons. On en retrouve sur toutes les manettes de jeux, tous les joysticks, tous les volants. La raison en est simple : le bouton est le moyen le plus simple de transcrire une action mécanique du joueur en action virtuelle à l’écran.

Il est dans un premier temps nécessaire de transcrire l’action mécanique du joueur en une activité électrique. En réalité, un périphérique de jeu est composé d’une multitude de circuits électriques. Ces circuits qui viennent courir dans toutes les parties du périphérique n’attendent qu’une chose : être fermés. Leur fermeture va laisser passer le courant électrique, ce qui constituera une activité électrique suffisante pour être détectée.

En temps normal, ces circuits sont donc ouverts. Et pour cause, les boutons ne sont rien d’autre que des interrupteurs miniature qui, dans leur position de repos, c’est-à-dire lorsqu’ils ne sont pas pressés, sont ouverts et ne laissent donc pas passer le courant. Or chaque circuit électrique est associé à un bouton, si bien que lorsque le joueur presse un bouton de son périphérique, il ferme un interrupteur et un circuit précis. Le courant électrique peut alors circuler, et un composant du périphérique n’a plus qu’à détecter quel circuit a été fermé afin de déduire quel bouton a été pressé !

La postion du bouton

Afin de ne pas rester en position fermée, un petit dispositif vient replacer le bouton à sa position initiale, ouvrant ainsi à nouveau le circuit. La nature de ce dispositif dépend du bouton considéré. Généralement, c’est une petite membrane en caoutchouc suffisamment rigide qui remet le bouton en place en revenant elle-même à sa position initiale.

Il peut aussi s’agir de ressorts, comme sur certaines gâchettes de joysticks. L’essentiel est de remettre le bouton à sa position initiale aussi rapidement que possible afin qu’il soit de nouveau prêt à être pressé, sans pour autant l’être de façon continue. Il est en effet parfois nécessaire de presser de façon répétitive un bouton, et non de le maintenir, ce qui exige du dispositif de replacement une certaine réactivité.

Les dérivés du bouton

Tous les boutons basiques des périphériques de jeux sont similaires et adoptent ce même principe de fonctionnement. Ces boutons prennent cependant des apparences physiques différentes. Ainsi, une gâchette de joystick, une palette de sélecteur de vitesses sur un volant, ou un simple bouton de manette de jeu sont autant de variations d’une même architecture. Il en va de même pour un sélecteur de vitesses séquentiel, simplement composé de deux boutons qu’une tige métallique ou en plastique vient presser, tige qui est ensuite ramenée à la position centrale par des ressorts par exemple. Seuls changent l’apparence du bouton, le dispositif qui permet sa pression et celui assurant son retour en position initiale.

Une croix directionnelle, elle, n’est rien de plus qu’un bloc de quatre boutons disposés en croix. Lorsque le joueur appuie sur la flèche du haut, il presse en réalité le bouton disposé sous la partie supérieure de la croix, fermant le circuit associé à cette direction. Quand il presse deux directions, vers le haut et la droite par exemple, ce sont alors deux boutons qui sont pressés, deux circuits électriques fermés, ce que le périphérique puis l’ordinateur ou la console interpréteront comme un mouvement en diagonale.

Nous évoquions brièvement les joysticks des pads d’arcades. En réalité, ces joysticks basiques ne sont rien d’autre que des blocs de boutons. Lorsque le joueur incline le joystick du pad dans une direction, il ferme en fait l’interrupteur correspondant à cette direction, situé dans la base du joystick ; un circuit électrique est alors fermé. De même, en inclinant le joystick en diagonale, deux interrupteurs sont pressés, deux circuits fermés, etc. Attention néanmoins, nous n’évoquons ici que les joysticks de ces pads, qui sont en réalité inspirés des joysticks de conception ancienne. Les joysticks actuels adoptent un fonctionnement nettement différent comme on le verra plus loin.

Les limites du bouton

L’architecture du bouton est donc tout à fait centrale dans les périphériques de jeux, puisqu’elle assure à elle seule une grande partie de la transcription des mouvements du joueur en signal électrique. Elle est cependant largement limitée. En effet, un bouton ou un interrupteur ne peuvent avoir qu’un fonctionnement binaire. Un bouton ne peut être que pressé ou relâché, un interrupteur ne peut être que fermé ou ouvert. Il est donc impossible d’exercer une action dosée.

Si votre personnage doit avancer, il ne pourra que courir ou rester sur place, impossible pour lui de marcher. Le problème est encore nettement plus grave pour un volant ou un joystick : imaginez qu’il ne soit possible que de tourner ou de virer à fond, ou de rester sur la même trajectoire. Ces périphériques perdraient de fait tout leur intérêt et un clavier suffirait bien pour une utilisation ludique.

Les choses ne sont, bien heureusement, pas aussi simples. Les boutons et leurs dérivés sont en réalité des commandes numériques. Elles produisent un signal électrique de forme binaire, capable de retranscrire en tout et pour tout deux positions. Il existe cependant d’autres dispositifs capables d’enregistrer des positions multiples, jusqu’à plusieurs dizaines de milliers par exemple. Ces dispositifs sont dits analogiques, c’est à eux que nous allons nous intéresser maintenant.

Les commandes analogiques, ou axes

Action et mouvement

En réalité, les limites des boutons classiques et leurs dérivés ne sont pas atteintes tant que l’on reste dans le domaine de l’action pure et simple, comme ouvrir le feu, utiliser un objet, etc. Lorsque le joueur désire effectuer une telle action, il appuie sur le bouton correspondant, rien de plus simple. Les limites sont atteintes quand il s’agit de retranscrire un mouvement ou de doser une action. Un bouton est, en effet, incapable de retranscrire un mouvement en signal électrique ou de percevoir la nuance entre une pression légère et une pression ferme. Il a donc été nécessaire de développer d’autres dispositifs capables d’effectuer cette conversion électrique.

La conversion électrique du mouvement

Un périphérique de jeu doté d’axes est, lui aussi, parcouru par des circuits électriques. Ceux-ci viennent d’une part assurer le fonctionnement de ces boutons classiques, mais font aussi partie intégrante de la gestion des commandes analogiques. Il n’est cette fois plus question d’utiliser de simples interrupteurs mais un composant électronique capable de créer une modulation analogique du courant, c’est-à-dire capable d’adopter une multitude - une infinité en théorie - de positions différentes, et non plus deux positions. Le composant le plus simple capable d’assurer cette tâche est en réalité le potentiomètre, ici utilisé comme une simple résistance variable.

Ainsi, chaque axe dispose d’un circuit qui lui est propre et est constamment alimenté. Sur ce circuit vient prendre place un potentiomètre qui oppose une résistance plus ou moins grande au courant selon sa position. Le principe du potentiomètre est simple : c’est un composant formé de deux éléments : un arc résistif fixe et une aiguille mobile, capable de tourner sur elle-même et en contact avec l’arc. Un des côtés de l’arc et de l’aiguille sont reliés au circuit électrique, constituant chacun un pôle du potentiomètre. Lorsque l’aiguille est orientée vers le côté de l’arc relié au courant, la résistance est minimale. Plus elle s’en éloigne en tournant sur elle-même, plus le chemin que doit parcourir le courant électrique sur la partie résistive est important, et donc plus la résistance du potentiomètre est importante.

La rotation du potentiomètre va faire varier sa résistance au courant, et par là même faire varier l’intensité du courant, la tension étant constante ; c’est une simple application de la loi d’Ohm. C’est cette variation de l’intensité qui pourra être détectée par un autre composant. On retrouve donc bien la transcription d’un mouvement, la rotation de l’aiguille du potentiomètre, en un signal électrique, la variation de l’intensité dans le circuit associé à l’axe.

L’interprétation de la variation du signal électrique

Une fois cerné le dispositif capable de créer des variations d’intensité, il reste à interpréter cette variation pour la transformer en une information compréhensible par l’ordinateur ou la console. En effet, nous n’avons jusqu’ici produit qu’un signal analogique inutile en tant que tel. L’interprétation est assurée par un convertisseur qui va transformer le signal analogique en une information numérique : on parle parfois de convertisseur ADC, acronyme anglais pour Analog-to-Digital Converter. Le convertisseur va associer chaque niveau d’intensité à une position du potentiomètre.

En théorie, ces niveaux d’intensité sont infinis, le convertisseur va donc fonctionner par plage d’intensité. Généralement, un convertisseur est capable de différencier 256 plages (8 bits), parfois 65 536 (16 bits), cette caractéristique dépendant essentiellement de la qualité du potentiomètre et d’une éventuelle amplification. Le convertisseur est donc capable de différencier autant de positions du potentiomètre. La précision d’une commande analogique est théoriquement proportionnelle au nombre de plages d’intensité différenciées : c’est là un point sur lequel peuvent se différencier des périphériques de jeu haut de gamme.

On comprend ici la nécessité de la calibration : le convertisseur doit d’abord s’étalonner en déterminant les valeurs minimales, maximales et la valeur médiane de l’intensité (lorsque l’axe est en position de repos). Une fois cet étalonnage effectué, il lui est possible d’associer ces valeurs aux positions extrêmes et à la position de repos de l’axe, et d’en déduire les associations intermédiaires entre valeurs d’intensité et position de l’axe.

Les périphériques de jeux actuels utilisant une connexion USB disposent tous de leur convertisseur analogique à numérique. Anciennement, cette conversion était effectuée par l’ordinateur, c’est pourquoi il était nécessaire de relier le périphérique à un port jeu capable de recevoir un signal analogique, car relié à un convertisseur ADC. En réalité, la calibration d’un périphérique USB est quasi invariable et très fiable, supprimant parfois sa nécessité, alors qu’un périphérique sur port jeu est directement dépendant du matériel qui l’accueille, rendant les calibrations nécessaires et fréquentes.

Une technologie de détection alternative

Comme la longueur de cette description en témoigne, le système de potentiomètres s’avère tout de même plutôt complexe, ce qui peut poser un problème notamment pour des périphériques sans trop de prétentions haut de gamme. Il existe à vrai dire une technologie alternative de détection des mouvements qui peut être utilisée dans des périphériques de jeux, en particulier des joysticks. Celle-ci est directement inspirée d’un autre dispositif, à savoir la souris, souris qui doit directement mesurer des rotations si elle est à boule, ou plus généralement mesurer celles de sa molette.

Le principe est le suivant : on dispose sur l’axe mis en rotation non un potentiomètre mais une roue dans laquelle sont creusées de petites ouvertures. De part et d’autre de cette roue prennent place une diode électroluminescente (LED) infrarouge et un capteur photoélectrique infrarouge. Lorsque la roue se met à tourner, elle laisse alternativement passer la lumière entre la LED et le capteur, ce qui fait produire à ce dernier un léger courant électrique, suffisant pour être détecté. A chaque passage de la lumière à travers la roue, il est donc possible d’enregistrer des pulsations électriques. Il suffit au final de compter le nombre de pulsations pour savoir de combien la roue s’est déplacée. En connaissant sa position initiale, il est donc possible de connaître la position réelle de la roue. En somme, si le déplacement de l’axe entraîne un déplacement linéaire de la roue, il est possible de connaître la position de l’axe : on retrouve le même principe qu’avec le potentiomètre.

Il est cependant nécessaire de connaître non seulement le déplacement mais aussi son sens, ce dont un seul capteur est incapable. Il faut donc disposer deux capteurs sur une même roue, l’un en léger décalage par rapport à l’autre, d’un quart de phase en réalité. Il suffit d’observer la succession de la modification des statuts des deux capteurs pour en déduire le sens de rotation.

L’intérêt de ce système est d’être moins sensible à l’usure, contrairement aux potentiomètres qui peuvent parfois avoir une durée de vie courte. En revanche, ce système est moins précis que les meilleurs systèmes de potentiomètres qui parviennent à distinguer 65 536 positions contre quelques centaines au maximum dans ce cas. En effet, il n’est pas possible de disposer davantage de fenêtres dans une roue de ce genre de dimensions. La précision du système photoélectrique est néanmoins largement suffisante pour la plupart des utilisations.

Toujours est-il qu’avec ce système photoélectrique ou un système de potentiomètre, on a bien la transcription d’un mouvement en informations qui pourront ensuite être envoyées à l’ordinateur ou la console. Au final, il ne reste donc qu’à concevoir un dispositif capable, à partir du déplacement d’une partie du périphérique de jeu, d’entraîner la rotation d’une roue ou de l’aiguille d’un potentiomètre. C’est ce à quoi nous nous intéresserons dans la sous partie suivante.

Joysticks et sticks analogiques

Le joystick est peut-être l’un des périphériques de jeux à commande analogique les plus complexe. En effet, c’est le seul à cumuler deux axes mus par une seule commande : le manche. Il lui est autant nécessaire de prendre en compte les mouvements horizontaux, de gauche à droite, sur son axe x, que les mouvements verticaux, de haut en bas, sur son axe y. Il a donc fallu développer un dispositif capable de déplacer l’aiguille de deux potentiomètres différents, sur deux axes perpendiculaires. Le résultat est certes efficace, mais assez complexe.

Un manche de joystick s’incline autour de son point de rotation et est ramené au centre, en position initiale, par un système de ressorts. Ce point de rotation est parfois en partie visible, tout comme une partie des ressorts destinés à le remettre en position. Mais en réalité, le manche du joystick ne s’arrête pas à ce point de rotation et se poursuit par une pointe plus fine qui vient se loger dans la base du joystick où une structure est destinée à détecter ses mouvements. Elle est globalement composée de deux éléments perpendiculaires et superposés, non solidaires, dans lesquels la pointe du joystick peut coulisser librement. La pointe est toujours prisonnière des deux éléments d’une forme généralement proche d’un U à branches courtes et qui sont donc globalement en forme d’arcs.

Chacun des arcs est maintenu à la structure (à ses deux extrémités) par deux points de pivot, autour desquels ils peuvent, dans une certaine mesure, tourner. Les points de pivot des deux arcs sont situés sur un même plan horizontal, mais ceux-ci sont disposés de telle sorte que la pointe du joystick puisse se déplacer dans tout l’espace en faisant s’incliner les arcs. L’un des deux éléments peut par exemple être disposé en U renversé au-dessus de l’autre. Il peut aussi avoir des branches plus longues et venir se placer en dessous de lui.

Supposons que le joueur incline le manche vers la droite. L’arc vertical va alors être incliné sur la gauche par la pointe du joystick, la position de l’autre arc n’étant pas modifiée (la pointe coulisse dans sa glissière). Le premier arc tourne donc autour de ses deux points de pivot. C’est là qu’intervient le potentiomètre. Celui-ci est en effet relié à l’arc et constitue en réalité l’un des deux points de pivot. Ainsi, lorsque le joueur incline le manche vers la droite, l’axe du potentiomètre tourne : son aiguille est déplacée par l’arc vertical qui s’incline. Notre objectif est atteint : le mouvement du joueur est bien transcrit en une activité électrique détectable. Il ne reste plus qu’au convertisseur ADC la tâche d’associer la valeur de l’intensité relevée à une position sur l’axe x horizontal et le tour est joué !

Le principe est sensiblement le même avec des capteurs photoélectriques en lieu et place des potentiomètres. C’est simplement le microprocesseur qui va déterminer la position du joystick en analysant son déplacement, perceptible grâce aux pulsations issues des capteurs. Ces pulsations sont elles-mêmes issues de la rotation de la roue percée entraînée par un des deux arcs lors de son inclinaison.

Le principe est également identique dans un stick analogique de manette de jeu. Toutefois, les dimensions de ce type de stick sont sensiblement réduites par rapport à un véritable joystick, et les contraintes physiques subies nettement moindres. Ainsi utilise-t-on plutôt des éléments en plastique dont seul l’un des deux est en forme d’arc, orienté cette fois vers le haut. L’autre élément est, lui, rectiligne et sert de support au stick tout en permettant son inclinaison. Le fonctionnement de ce système est cependant tout à fait identique et l’on retrouve également deux petits potentiomètres fixés à une extrémité de chacun de ces éléments.

Volant

Les choses sont nettement plus simples quand on en vient à évoquer le principe de fonctionnement d’un volant et son dispositif capable de mouvoir l’aiguille d’un potentiomètre à partir d’un mouvement du joueur. En effet, lorsque le joueur tourne le volant, il effectue déjà une rotation autour d’un axe. Il est donc uniquement nécessaire de disposer un potentiomètre dans l’axe de rotation du volant et l’affaire est réglée d’un point de vue électronique : le mouvement du joueur est bien transcrit en une modification de l’intensité du courant dans le circuit correspondant à l’axe principal.

En réalité, les contraintes de conception d’un volant sont plus strictement mécaniques. Il doit pouvoir résister à une force importante et un mouvement rapide exercés par le joueur lors de brusques coups de volant. Le volant doit donc être solidement fixé sur son axe et de préférence maintenu par un ou plusieurs roulements à billes. Il doit aussi être efficacement ramené au centre par un puissant ressort. Du reste, sa précision, comme celle de tout périphérique de jeu, est influencée par la qualité des composants qui l’équipent. En effet, le potentiomètre doit être le plus linéaire possible et le convertisseur ADC, le plus précis possible dans son découpage de plages d’intensité.

Pédalier de volant et autres commandes analogiques

Le fonctionnement d’un pédalier de volant est lui aussi nettement moins complexe que celui d’un joystick. En effet, même si le potentiomètre n’est cette fois pas directement dans l’axe du mouvement, il est néanmoins facile d’entraîner le déplacement de son aiguille. Il suffit soit de le positionner sur un axe à la base de la pédale (la presser entraînera une rotation de cet axe, qui entraînera lui-même la rotation de l’aiguille du potentiomètre), soit de disposer une rampe crantée sous la pédale qui, lors de sa pression, entraînera une roue crantée, elle-même fixée sur l’axe du potentiomètre.

En réalité, les autres commandes analogiques disponibles sur les périphériques de jeux, telles que les gâchettes progressives des manettes, peuvent adopter le même principe de fonctionnement. Leur pression peut entraîner le glissement d’un élément qui entraîne lui-même la rotation de l’axe d’un potentiomètre. Il est ainsi possible d’associer, comme dans le cas des pédales, un niveau d’intensité à un niveau de pression sur la commande.

Une autre solution pour de simples boutons que l’on désire rendre progressifs, y compris des gâchettes : utiliser des dômes conducteurs. La pression du bouton entraîne un écrasement du dôme fortement conducteur sur une piste résistante : la résistance diminue et l’intensité augmente de façon suffisante pour être détectée et analysée. Le principe d’une commande analogique est donc à nouveau bien rempli. En somme, avec des solutions aussi simples, les simples boutons de type interrupteur détaillés dans la partie précédente risquent bien d’être en voie de disparition !

De l’activité électrique à l’action à l’écran

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.

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.

La technologie du retour de force

Définition et principe

Nous avons jusque ici détaillé le fonctionnement essentiel d’un périphérique de jeu, celui qui rend un tel périphérique effectivement fonctionnel. Nous allons maintenant passer en revue une addition à ce fonctionnement basique qui nous semble intéressante dans la mesure où elle augmente encore sensiblement le pouvoir d’immersion des périphériques de jeux : le retour de force.

Définition et principe

Comme son nom l’indique, la technologie du retour de force consiste en un échange inverse d’informations : jusqu’à présent, c’était le périphérique de jeu qui envoyait des informations sur ses commandes à l’ordinateur ou la console ; avec cette technologie, on observe un retour d’informations vers le périphérique. C’est cette fois le jeu vidéo qui vient contrôler le périphérique.

Ce contrôle se traduit par des mouvements et vibrations destinés à faire ressentir au joueur une partie de l’action. Il ne s’agit cependant pas de simples vibrations, car le retour de force est capable d’influer directement sur les commandes. Il est tout à fait envisageable de voir un joystick à retour de force se déplacer seul dans toutes les directions, ou un volant tourner seul sur lui-même. Si ces périphériques étaient dotés d’une simple fonction de vibrations, de telles réactions seraient impossibles.

L’intérêt est donc d’augmenter nettement le ressenti physique du joueur pour le plonger davantage dans l’action et augmenter le nombre d’informations à sa disposition. En réalité, cette technologie concerne surtout les volants et joysticks. Il est en effet impossible de l’intégrer sur une manette trop petite et dans laquelle elle n’aurait pas de réel intérêt. Une manette se contente donc généralement d’une fonction de vibrations. Celle-ci fonctionne grâce à de petits moteurs accolés à des masselottes excentrées : en rotation, elles entraînent le moteur avec elles sous l’effet de leur inertie (force centrifuge). Celui-ci étant solidement fixé à la manette, il la fait vibrer. Voyons maintenant comment fonctionne de son côté la technologie du retour de force.

La technologie et son application dans les périphériques de jeux

Pour déplacer les commandes du périphérique, il est aussi fait appel à des moteurs électriques. Ceux-ci sont en réalité directement fixés sur les axes analogiques concernés par le retour de force. Ainsi, en les faisant traverser par un courant continu, il est par exemple possible de les faire se déplacer ou opposer une résistance à un mouvement. En les faisant traverser par un courant alternatif à relativement basse fréquence (de l’ordre de quelques Hz au maximum), il est également possible de générer des vibrations dans l’axe. Il suffit donc en quelque sorte de contrôler la tension et la fréquence du courant circulant dans ce ou ces moteurs pour créer des effets différents et tenter de reproduire aussi fidèlement que possible les effets d’une action dans le jeu.

Tout le problème consiste à agir sur la commande elle-même. En réalité, ce problème est relativement simple à résoudre. Un moteur cherche à produire une rotation. Or le système de détection des mouvements sur un axe analogique implique également la rotation d’un potentiomètre ou de la roue d’un système photoélectrique. Il suffit donc de fixer le moteur électrique sur le même axe que le système de détection.

Ainsi, dans un joystick à retour de force, on retrouve un moteur relié à chacun des deux axes analogiques par une courroie. Il influe directement à la fois sur le déplacement du manche et les mouvements détectés. Il en va de même avec un volant à retour de force sur l’axe duquel vient également intervenir un moteur. Dans ce cas précis, il est même possible d’en utiliser plusieurs de dimensions différentes afin d’augmenter la richesse des effets.

On peut par ailleurs noter que des périphériques à retour de force sont dépourvus de systèmes de ressorts destinés à ramener leurs commandes en position initiale. C’est en effet directement les moteurs qui se chargent de ce retour et opposent une résistance continue à tout déplacement. Cela explique pourquoi il est possible de déplacer la commande d’un périphérique à retour de force sans aucune résistance lorsqu’il n’est pas sous tension.

Le contrôle logiciel

La relation entre jeu et périphérique est inversée dans le cadre du retour de force : en effet, c’est cette fois du jeu que part la commande. Celui-ci doit donc tout d’abord disposer de la gestion du retour de force, sans quoi aucun effet n’est possible. C’est en grande partie lui qui détermine la nature des effets donnés à produire au volant. Il revient donc aux développeurs de jeux vidéo d’établir aussi précisément que possible la correspondance entre action et effet. C’est aussi principalement dans le jeu vidéo que s’effectue la détermination de la force des effets.

Dans la chaîne de commandes prennent ensuite place les pilotes du volant qui transforment les commandes reçues du jeu en paquets de données à transférer au volant. Avec un ordinateur, ce transfert nécessite une connexion USB, un port jeu n’étant pas doté des connexions nécessaires. Il revient finalement au microprocesseur du volant d’interpréter les paquets de données reçus et de commander les moteurs électriques afin de les traduire mécaniquement.

Le principal défi de ce système vient du fait que le retour de force de périphérique est relativement spécifique selon la nature et le nombre de moteurs mis en œuvre. Il est donc impossible pour les développeurs d’établir un profil de retour de force efficace pour tous les périphériques à la fois. Généralement, ils en proposent donc plusieurs, mais ne peuvent évidemment pas tenir compte des périphériques qui seront développés après la mise au point du jeu.

Tom's Guide - http://www.tomsguide.fr/