Didier Bouchon

RÉSUMÉ PRÉSENTATION DE DIDIER BOUCHON DU 16/03/2011

Didier Bouchon
Depuis 2003, Didier Bouchon est directeur technique de l’Atelier, au pôle création du Cube. A ce titre, il réalise les développements des œuvres qui y sont produites, ou supervise les développements réalisés par d’autres ingénieurs. Didier Bouchon réalise également le développement d’œuvres pour d’autres artistes, comme Miguel Chevalier ou Anne-Sarah Le Meur, à titre personnel ou dans le cadre de l’association Music2eyes.
Il a été auparavant développeur pour Cryo, Infogrammes, Virgin, Mindscape, CANAL numedia. On lui doit notamment en 1988 le jeu « L’arche du capitaine Blood » (en collaboration avec Philippe Ulrich). Il est notamment spécialiste des moteurs 3D, mais s’intéresse tout particulièrement à l’intelligence et la vie artificielle.

Résumé des échanges
Didier Bouchon explique le principe général de l’installation AnomalA de Maléna Beer et Stéfane Perraud, qui consiste en un spectacle pour une danseuse évoluant dans une vidéo projection, laquelle présente un ensemble de blobs rouges et un autre de couleur bleue. Les blobs rouge fonctionnent comme une « aura » sur la danseuse, restant regroupés sur elle, alors que les blobs bleus évoluent librement, mais en relation avec les blobs rouges. Le principe de la pièce consiste à donner à penser qu’un être caché est représenté par son aura de blobs bleus, et que la danseuse essaie d’établir une relation avec lui.
Didier Bouchon précise que les blobs fonctionnent selon le principe des bancs de poissons.
Inscrits sur une grille, les informations de déplacements ou d’états sont transmises uniquement de case adjacente à case adjacente. Ce principe, comme le pas de la grille, ont une influence majeure sur le fonctionnement et le rendu esthétique de l’installation. De plus, il permet une importante optimisation du temps de calcul.
Didier Bouchon décrit notamment les effets de bords provoqués par cette approche, qui voit par défaut les blobs s’agglutiner sur les côtés, sans qu’ils puissent spontanément s’en échapper.
Il introduit alors la notion de « méta-information », pouvant circuler dans tout le groupe, afin de faire varier le comportement d’un élément. Cette approche représente selon lui une alternative puissante à au « moteur physique » souvent utilisé dans ce cas de figure. Notamment, parce qu’il permet d’avoir une approche sémantique des réactions.

Transcription pdf à télécharger ici

TRANSCRIPTION PRÉSENTATION DE DIDIE BOUCHON DU 16/03/2011

Participants
Florent Aziosmanoff, directeur de la création, Le Cube – animation des débats.
Sabrina Deveaux, chargée de production, Le Cube.

Artistes/techniciens : Antoine SchmittSylvie TissotJacques le FaucheuxThomas DupeuxFrançois ChabretBaptiste BohelayGuillaume ChoquerYasmina Lahjij, assistante de Recherche, Le Cube – en charge de la transcription.

Echanges  les parenthèses sont des notes du transcripteur.

Didier Bouchon (D.B.) : La danseuse, qui est l’auteur même, souhaitait voir deux entités constituées de plusieurs individus, évoluer dans le même univers. Appelés « blobs », les individus rouges sont projetés sur le corps de l’interprète. Les blobs reproduisent ses mouvements sans pour autant en faire une copie exacte. Elle les influence, alors que les blobs bleus eux, se laissent influencer par l’entité rouge.
Techniquement, cela se rapproche de ce qu’Antoine Schmitt a expliqué : chaque entité est une petite surface sur laquelle est apposé une texture. Elle pourrait être ronde, carrée ou autre, sa taille est modifiable, cela même au cours de diffusion.
Ici, chaque entité a une relation à l’autre. Par un système de grille, les « AnomalA » s’inscrivent chacun dans une case. Ils changent de point d’ancrage, et cherchent au préalable leurs voisins les plus proches, tout en détectant les cases libres. De ce fait, tous les individus ne « discutent » pas entre eux.
Si l’auteur souhaitait un dialogue entre tous, les choses s’enchaîneraient très vite, voir trop, et cela doublerait le temps de calcul

Florent Aziosmanoff (F.A.) : L’entité a donc plus à voir avec un banc de poissons qu’avec des oiseaux ?

D.B. 
: En effet. Mais, de nouvelles recherches ont été faites remettant en cause les acquis. Ici, ce qui influence la chose est la captation. Il y a toute une phase similaire au travail d’Antoine. Par exemple, lorsque les blobs bleus se déplacent autour de Malena, ils ont ce comportement visant à rejoindre une destination choisie. La captation devient une attirance vers les rouges eux-mêmes et vers le corps de la danseuse.
Un champ est créé autour de chaque petite case, créant un vecteur d’attirance magnétique allant vers les pixels les plus proches. Cette captation n’est alors pas à proprement parlé centrée, mais peut tendre sur le côté.

F.A. : Si l’entité est entre le corps et la main, elle se dirigera vers la partie la plus proche, ce qui ne veut pas forcément dire vers le centre.

D.B. : Oui, c’est juste. Il faut aussi savoir que ce même vecteur connaît des périodes changeantes où, par exemple, sa définition tend à la répulsion.

F.A. : Y a-t-il une règle de relation dans l’animation de l’entité bleue par rapport aux rouges ?

D.B.
 : L’entité en soi (bleue ou rouge) reste à une certaine distance de l’autre, à l’image de ce que font les individus eux-mêmes. Contrairement au travail d’Antoine, ils n’ont pas forcément un centre leader. Ils ont, entre chacun, une distance idéale définie. Lorsqu’ils sont trop éloignés de leurs voisins, la force est attractive. A contrario, proches, ils ont un mouvement répulsif. Ces paramètres sont réglables et nous pouvons à tout moment définir, par exemple, une condensation de la forme.

F.A. 
: Un certain nombre de ces paramètres sont manipulés en live en régie. Dans le projet initial, ils étaient supposés faire l’objet d’un comportement autonome. La vidéo ici montre le stade où nous en étions à l’époque (2008).

Antoine Schmitt (A.S.)
 : Est-ce que c’est ce comportement d’attraction / répulsion qui donne une forme circulaire ?

D.B.
 : Oui, et on peut retrouver ce phénomène dans Viens danser de Catherine Langlade. C’est un calcul simple, comprenant une courbe où se révèlent des asymptotes. En étant loin, l’attraction augmente, mais pas jusqu’à l’infini. Ils sont en premier lieu attirés, puis de moins en moins, jusqu’à ce qu’un « plateau » gère la distance. La répulsion est aussi une asymptote : s’ils sont trop près, une force de répulsion les dégage.
Toutefois, lorsque cet écart est perçu comme idéal par l’entité, par rapport à ce qui lui est donné comme paramètres, les blobs peuvent avoir un comportement très erratique.

F.A. : On peut observer qu’ils se figent. A quoi cela correspond ? Sont-ils en train de réduire leur vitesse de déplacement ?

D.B. : Oui, tout à fait. Il y a une vitesse de déplacement maximale et en même temps une variable de leur répulsion propre. Il y a des moments où une répulsion avec les blobs rouges se fait sentir et de temps en temps cette répulsion est complètement inhibée pour les laisser se côtoyer et même se traverser.
Ainsi, même étant soumis à un effet de répulsion, ils peuvent se déplacer et se mélanger entre individus de couleur différente.
D’autres fois ils se dispersent et restent où ils ont été projetés, un peu comme s’ils n’avaient plus aucune motivation

Jacques le Faucheux (J.L.F.)
 : Comment mets-tu en place le suivi des rouges ?

D.B. : C’est une caméra infrarouge située à proximité du vidéo projecteur qui capte seulement le réel, et non la projection qui est dans le spectre du visible. Ainsi, il capte le corps de la danseuse et le tapis.
La danseuse est habillée en blanc afin de bien voir la projection sur son corps. Or, le tapis est lui aussi blanc. Cela rend la captation assez difficile, tout est perçus comme un léger gris. Il faut alors jouer avec de l’éclairage infrarouge : nous avons par exemple eu l’idée de mettre les projecteurs au ras du sol pour éclairer la danseuse, en faisant attention à ce qu’ils n’éclairent pas le tapis…

F.A. 
: Ce qui anime la forme rouge est bien un mimétisme en miroir ?

D.B.
 : Oui, en effet. La grille dont je parlais tout à l’heure est reproduite de façon symétrique chez l’autre entité

F.A. 
: Quel est le pas de cette grille ?

D.B. : 160X80, il me semble, sur l’ensemble du tapis.

A.S. : Tu parles de quelle grille ?

D.B.
 : De celle qui gère un peu tout : les informations de l’environnement, notamment celles de ces attractions, mais aussi les données des individus s’inscrivant ou se désinscrivant d’une case.

A.S.
 : Il s’agit de la même grille pour tous ces éléments ?

D.B. 
: Oui, il y a toutes les informations à portée de main. Lorsque je modifie une classe dans la grille, toutes les autres données sont lisibles à côté.

F.A.
 : Si tu augmentes la taille de la grille que se passe-t-il ?

D.B.
 : Cela a une grosse influence.

F.A.
 : De quel genre ?

D.B.
 : Sur tout. Rien que sur les rapports des deux entités entre elles, notamment en terme d’attraction/répulsion. Afin d’économiser du temps de calcul, je les fais chercher des cases plus loin. Or, si on diminue le vecteur de recherche de ces cases, elles n’ont plus d’interaction.

F.A.
 : Ainsi, des pixels se situant deux cases plus loin ne seraient pas perçus ?

D.B.
 : Oui, c’est un exemple. Si je règle une grille très fine cela a une influence directe sur le temps de calcul. Si, dans l’ensemble, les vecteurs sont grossiers, cela influence tous les niveaux. Donc, la résolution de cette grille joue énormément dans l’effet donné à l’installation.
C’est une œuvre interactive, ce qui sous-tend des effets souhaités et d’autres pas. Pour ce faire, je combine parfois deux vecteurs différents de la grille afin de ne pas basculer brusquement d’un état à un autre, et tenter de produire un effet progressif d’une force à une autre.

F.A.
 : Tu parles des vecteurs récupérés de la captation ?
(Les mouvements de la danseuses sont traduits par une série de vecteurs répartis sur la grille et indiquant localement la direction et l’intensité du mouvement observé.)

D.B. : Oui.

F.A. : On comprendra que tu choisisses la finesse de la grille en fonction d’un budget de production. Mais, n’est-ce pas aussi déterminé par l’expression que cela te permet d’obtenir ? Ce que l’on ne perçoit pas dans la vidéo, c’est la finesse plastique des blobs. Parce que c’est une pièce extrêmement productive sur le plan plastique.
Est-ce qu’ici, dans le même esprit que le geste naturel du Pixel Noir d’Antoine, un cheminement peut être reconnu ? Ou au contraire, fais-tu en sorte que le schéma décrit ne soit pas lisible par le public ?

D.B. : Lorsque je travaille sur la grille, je me rends compte par moment que cela se voit.

F.A. : Ici, par exemple les blobs se déplacent lentement. Penses-tu que leur mouvement est reconnaissable ?

D.B. : C’est peut-être à vous de me le dire.

F.A. : Pour ma part, je n’ai pas spontanément pensé qu’il y avait une grille.

D.B. : C’est intéressant, car je n’ai pas parlé de cette grille à Malena. Je lui ai simplement parlé des forces d’attraction afin qu’elle puisse entrevoir ce sur quoi elle peut jouer, moduler, plutôt que de demander des choses qui requiert d’autres systèmes. Il y a une multiplicité de possibilités dans cette seule et même grille.
J’ai implémenté des choses dont je parlais tout à l’heure, comme les intentions des AnomalA. La première application était la collision et les bords. Or, il y a un problème avec les bords, car lorsque les individus s’accumulent vers ce dernier, ils subissent le système de répulsion, et de proche en proche ils se retrouvent bloqués.
C’est une discussion que nous avons eue, car des effets gênants se produisent le long de ces bords, non souhaités par l’auteur. Puisque cela s’agglomérait involontairement, j’ai tenté de propager ce mouvement d’entité en entité.

F.A. : Tu veux évoquer une méta-information circulant dans le groupe ?

D.B. : Oui, on imagine une certaine lâcheté de la part des individus tous confondus quant à une distance idéale assez large. Lorsqu’ils s’approchent du bord, ils ne poursuivent pas pour éviter de se coller aux autres. Cela peut faire penser aux effets agoraphobes d’une foule en panique.

F.A. : Qu’est-ce que cela produit au final ?

D.B.
 : Je l’ai implémenté, mais ne l’ai pas poussé jusqu’au bout car il y avait d’autres problèmes techniques. Mais, la possibilité qu’ils se collent et se piétinent aurait pu être un parti pris.

A.S. : Dans ce cas là il y aurait des morts.

D.B. : Exactement. Il faudrait s’interroger sur le fait que dans le métro, les gens ne se piétinent pas. Sauf en cas de panique. Mais, en général les gens ne se grimpent pas dessus. Les personnes ralentissent, sont forcées de suivre le pas des autres, ou renoncent.

A.S. : Il y a quand même une information intermédiaire qui est le contact physique, car lorsqu’elles sont éloignées, elles sont attirées ou poussées. Mais, lorsqu’elles se touchent, il règne là une impossibilité et elles ne peuvent aller plus loin. C’est un problème que j’ai souvent et dans ce cas je triche.

D.B. : Je crois qu’on ne peut pas savoir si c’est une impossibilité, car au final, c’est un problème informatique. Et justement, en informatique il faut traiter les entités les unes après les autres. Lorsqu’une entité s’approche de l’autre, on peut augmenter la force de la première pour qu’elle s’éloigne. On baisse aussi la force de la seconde pour qu’elle ralentisse. A l’image des collisions, la force se réparti sur les deux éléments.
Le plus souvent, celui qui arrive attend de l’autre qu’il se déplace. Le temps que cela s’équilibre, il faut presque, comme dans les moteurs physiques, que l’on recalcule plusieurs fois entre deux frame un écart idéal.
Ici, je ne le fais pas pour des raisons de calcul, pour ne pas non plus amputer le « budget calcul » global. Néanmoins, je trouve que le côté transmission d’informations est plus intéressant que de chercher le moteur physique.

F.A. : Pour remonter vers une sémantique.

D.B. : Oui, tout-à-fait. Antoine parlait de contact : ils ont seulement cette attirance et cette répulsion. Lorsqu’ils sont très près, la répulsion augmente et ils en arrivent même à se chevaucher. Mais, s’ils viennent à se coincer, ce n’est pas en soi un problème.
En revanche, si je créais un effet de « billard », je ferais en sorte que les individus ne se heurtent pas les uns aux autres. Mais, ce n’est pas le cas ici.

Sylvie Tissot (S.T.)
 : Justement, Antoine tu avais fait un système sur Director de boules se percutant, et j’avais pris un de tes exemples dans le cadre d’un projet.

A.S. : Une pièce que j’ai fait ?

S.T. : Oui, elle était téléchargeable.

A.S. : Tu es sûr que c’est de moi ?

Rires

S.T. : Certaine.

F.A. : Tu l’as trouvé sur le site de gratin.org ? Car il y a plusieurs sources et créations en lien. C’est peut-être les scènes physiques de Yugop ?

A.S.
 : Ou Douglas Stanley ? Parce qu’en effet, j’ai fais une pièce avec des billes un peu sous l’effet « Billard », mais je ne suis pas sûr qu’il s’agisse de celle-ci.

S.T.
 : J’ai sans doute confondu…En tout cas je me demandais jusqu’où peut-on aller sans exploser le temps de calcul ?

D.B.
 : Cet après-midi on me demandait combien de facettes peut-on obtenir sur un objet dansVirtools et pouvoir jouer avec un frame rate raisonnable. C’est vraiment difficile à définir, car cela dépend de la machine, mais aussi de la carte vidéo. Il y a des moments où l’on se confronte à une difficulté technique et bien souvent l’année suivante, cela devient possible grâce aux avancés dans le domaine. Il faut ainsi poser la question selon la date et le type de machine.

S.T. 
: Oui, je vois.

F.A. 
: C’est étonnant, à certains moments les individus s’arrêtent. Pour gérer la plasticité de ces blobs tu manipules leur vitesse ?

D.B.
 : Il y a des paramètres.

J.L.F. 
: Quelle latence obtiens-tu entre le tracking du personnage et le mouvement de l’entité rouge ?

D.B. : Cela correspond au temps de réception de l’image et de son traitement.

J.L.F. 
: Tu as ainsi une image de décalage.

D.B.
 : Deux, on va dire. Le temps d’acquisition induit forcément une réception de l’image a posteriori de la captation. Vient ensuite le traitement. Je m’arrange en tout cas pour que cela prenne moins de 15 % du CPU (capacité globale de calcul de la machine). Il y a un équilibre entre le traitement de la vidéo et l’exécution. On touche ici à la question du temps réel.

S.T. 
: Le pupitre qui te permet de paramétrer l’installation, peux-tu nous le montrer en image, à quoi ressemble-t-il ?
(Ce pupitre permet de faire évoluer le comportement de l’installation pendant le cours du jeu. Il remplace à ce stade le mécanisme d’intelligence artificielle, qui devrait faire évoluer lui-même les comportements du dispositif numérique, en fonction de ce que le moteur de perception analyse des attitudes de la danseuse.)

D.B. 
: Il s’agit d’un pupitre avec des sliders Midi. Il y a plusieurs modèles, dont celui avec des boutons rotatifs qui a l’avantage de pouvoir tourner en continu, ce qui évite les sautes. Si, de façon interne on change un paramètre, ce dernier est aisément implémenté. De ce fait, nous ne sommes pas gênés par une position initiale qui remettrait tout à zéro, nous restons au stade où nous en étions, dans un flux continu.
Celui que nous avons à l’atelier est muni de sliders motorisés permettant de mettre en position les paramètres de manière instantanée, en cohérence avec les paramètres établis en amont.

S.T.
 : C’est donc plus simple de passer par un boîtier comme ceux que tu décris, plutôt que de passer par une interface soft ?

D.B. 
: Avec une souris, on est obligé de regarder ce que l’on fait de près. On ne peut faire qu’une chose à la fois, et si l’on veut en faire plusieurs, il faut prévoir en cochant ceci ou cela. Avec ce type de boîtier, on peut piloter en regardant l’effet sur le plateau, sans avoir à regarder son écran, et on peut manipuler plusieurs contrôles à la fois.

livingartlab

livingartlab