Mode d’emploi. Cliquer dans l’animation pour l’activer. Appuyer sur les flèches « gauche », « haut », « droite » et « bas » de votre clavier pour controller le Pacman. Pour voir « l’effet », sortez d’un des côtés de l’écran : vous retrouverez votre personnage projété de l’autre côté, comme s’il s’agissait d’une seule et même image.
Argument. Il y a eu un moment dans le film cyberpunk à grand budget The Matrix Revolutions que nous avons trouvé assez juste, où les concepteurs du film avaient effectivement compris comment raisonerait un ordinateur dans une situation pareille. Voici la petite histoire : pour des raisons dramatiques propres au film, le personnage principale « Neo » se trouve dans une simulation d’une station de métro dont il doit sortir. Neo est très puissant, il sait voler, frapper avec la force d’un train, etc. — choses qu’il sait faire car il « comprend » intimement le fonctionnement de la simulation dans laquelle il se trouve. Néanmoins, il reste prisonnier en quelque sorte des limites de la simulation elle-même, de ces contraintes matérielles et logiques, ainsi qu’aux événements qui lui sont présentés, chose qui lui est démontré assez fortement dans l’image qui nous a intéressé.
Le personnage « Neo » se tient sur les rails du métro. Pour essayer d’y echapper, il choisit un des deux sens des rails et court. Pour accentuer ce qui se passera par la suite, les cinéastes présentent la partie essentielle sous un plan d’ensemble frontal, sans mouvements de la caméra, comme une sorte de mini-théâtre. Dans ce plan-séquence Neo sort de l’écran côté gauche et rentre aussitôt dans l’image côté droit. Stupéfait, il se rend compte qu’il est revenu au point de départ (« shit! »).
On aurait envie de rattacher cette image à trois autres, celles-ci certainement plus critiques dans leurs rapport à leurs supports mais toutefois analogues dans la façon dont elles bouclent les espaces internes de l’image : The Cameraman de Buster Keaton, avec Film et Quad de Samuel Beckett. Dans The Cameraman, Keaton passe sans cesse de l’écran du film à la scène du théâtre et vice versa, souvent en passant à travers le bord du cadre d’un médium pour attérir dans l’espace de l’autre. Dans Film nous pensons plutôt au travelling latérale où en ouvrant la porte pour vider le chat, un deuxième animal — le chien — rentre entre les jambes du personnage et file au panier, ouvrant droit à un deuxième travelling pour vider ce chien, puis un troisième, puis un quatrième. Les animaux rentrent d’une porte au bord gauche de l’écran, comme d’un espace co-présent avec l’intérieur de l’écran, mais juste à gauche de celui-ci : les animaux rentrent litéralement par un trou ouvert sur le bord gauche de l’écran. Puis enfin, dans Quad, il s’agit de l’ensemble du dispositif qui a été conçu comme une série de modulations qui font rentrer et sortir des corps du bord vers le centre, du centre vers le bord, autour du bord comme d’une limite, et où la géométrie variable repose sur une logique de bouclage machinique qui fait dévoiler par la répétition la figure émergeante du cadre intérieur comme surface/espace/plot dépliable et réversible (cf. plot).
La scène de Matrix rend hommage en quelque sorte à ces héritages (au moins explicitement celle de Keaton), mais elle fait référence surtout au monde informatique, et plus précisément au monde des jeu vidéo. Car cet effet de bouclage — où les bords de l’écran continuent sans interruption sur le bord opposé, formant ainsi un espace (ou « plot ») infini pour le déroulement de l’action -, puise ces origines sans ambiguïté dans des jeux vidéo classiques, à commencer par Spacewar! de 1962. Il a été ensuite vu à travers toute l’histoire du jeu vidéo. Nous l’appelons ici effet pacman d’après le jeu vidéo qui l’a rendu célèbre : quand le personnage principal de Pacman sort d’un côté de l’écran pour échapper aux fantômes via un tunnel dédié à cet effet, il rentre de l’autre côté comme si l’écran était bouclé sur lui-même. Dans Pacman, cet effet n’est plus une conséquence des limitations de la machine (voir plus loin), mais plutôt une des stratégies centrales du jeu.
Dans un célèbre « hack » du jeu vidéo Asteroids, l’effet pacman permettait au joueur de se placer dans un des coins de l’écran, et d’attaquer ainsi facilement tout objet hostile à partir d’un placement relativement protégé. Ce jeu bien connu pour sa difficulté a été ainsi rendu docile, permettant au joueur d’y jouer pendant des heures via un seul jeton. Le jeu avait en réalité un « bug » qui permettait au joueur de profiter seul de l’effet pacman, c’est-à-dire de tirer ses missiles à travers les bords de l’écran, alors que les soucoupes ennemis étaient obligées de tirer à travers tout l’écran. Le programmeur avait tout simplement oublié de leur donner également cette faculté. La raison de cet « oubli » est assez compréhensible pour ceux qui auraient tenté de programmer un tel jeu. Il est facile de laisser l’utilisateur tirer « à travers » les bords : une fois son missle circule trop loin à gauche on lui attribue une nouvelle valeur pour le positionner sur le côté droit. Par contre, pour calculer où une soucoupe doit tirer si jamais son missile devait traverser les bords pour atteindre un cible qui se trouverait en réalité du côté opposé de l’écran, il s’agit d’une opération éminement plus complexe. Ce n’est pas irréalisable, loin de là — la version 2.0 d’Asteroids a d’ailleurs inclus cet « upgrade » —, mais on comprend bien comment le programmeur aurait pu laisser un tel « bug », car le raisonement est plus difficile à simuler que le comportement dans une simulation informatique, surtout quand l’espace correspond peu à notre réalité.
En revenant sur l’effet pacman lui-même, nous y attribuons au moins deux raisons techniques pour son éxistance : premièrement il y aurait la taille fini et donc spatialement délimité des composants de mémoire (cf. spatialisation), et puis deuxièmement, il y aurait la limitation interne des données elles-mêmes, le fait qu’une valeur ne peut contenir qu’un étendu limité de valeurs (cf. wraparound). On pourrait rajouter des fonctions comme celle du bitshift et surtout celle du modulo. Toutes ces fonctionnalités nous annoncent une grande plasticité physique des chiffres une fois entrés dans la machine : les valeurs se bouclent sur elles-mêmes, elles sont dans un espace limité bouclé aux abords sur lui-même et ces bouclages suivent des topologies spécifiques qui ne corréspondent pas toujours à des modes de calcul habituelles. Parfois « 255 + 2 = 257 », parfois « 255 + 2 = 1 » (cf. wraparound).
Les machines artistiques qui exploitent ces bouclages sont trop nombreux à référencer ici, mais nous pouvons au moins citer quelques-unes : Carbon, Yellowtail, Software Structures.