Réalisations

Le couloir virtuel – Cité des Sciences

L’exposition intitulée « Très Haut Débit » au Carrefour numérique à la Cité des Sciences et de l’Industrie présente au grand public plusieurs facettes du Très Haut Débit et les nouveaux usages qu’il permet. C’est dans ce cadre que nous avons réalisé le projet du Couloir virtuel.

Couloir virtuel

L’installation du couloir virtuel consiste en un couloir flanqué de deux grands écrans dans lesquels les visiteurs peuvent se voir incrustés dans un décor imaginaire aux cotés d’autres visiteurs se trouvant dans un autre couloir virtuel situé à distance. Ce décor animé leur propose d’interagir avec ce nouvel environnement sous la forme de jeux participatifs :

Musica : ce décor propose aux visiteurs de se placer derrière différents instruments d’une scène de concert, et de les activer par leurs mouvements afin de jouer une musique sous les feux de projecteurs virtuels. Plusieurs pistes sonores et instruments différents sont proposés.

Machine infernale : ce décor ludique propose aux visiteurs de récupérer des balles virtuelles qui tombent d’un coin de l’écran et de les acheminer de l’autre coté du couloir afin d’alimenter un mécanisme étrange tout droit sorti de l’esprit d’un inventeur loufoque, qui déclenchera une fois activé une réaction en chaîne qui expulsera sur les visiteurs une flopée de balles rebondissantes. Le tout dans une sorte de salle des machines où tuyaux et autres soupapes laissent échapper fumées et vapeurs sur les visiteurs dans une ambiance sonore immersive.

Nature : Ce jeu-décor place les visiteurs dans un décor de nature en plein air. Des goutes d’eau tombent au sol, causant en un instant la poussée de brins d’herbe et fleurs colorées. Le visiteur est alors amené, en utilisant son propre corps, à créer un chemin pour cette eau afin de l’acheminer vers une plante géante pour lui permettre de fleurir et de s’épanouir. Les efforts du visiteur sont alors récompensés par un groupe de papillons colorés qui viendra virevolter autour de lui, et même se poser sur ses épaules.

Casse-briques : Ce jeu place les visiteurs dans un décor virtuel futuriste et leur propose de faire rebondir une balle afin de détruire un agencement de briques. Différents bonus et malus sont ramassés ou évités par les joueurs et influencent le jeu.

    • Client : Cité des Sciences et de l’Industrie
    • Projet : Couloir virtuel
    • Dates : Exposition « Très Haut Débit » de Septembre 2009 à Octobre 2010
    • Expertise : C#, architecture client/serveur, traitement vidéo, simulation de fluides, streaming audio/vidéo, contenu multimédia


Voir une courte vidéo de l’application Musica en action


Voir une démonstration de l’application Nature

Réalisation technique

L’installation est constituée d’une paire d’écrans géants ainsi que d’une caméra réseau à grand angle, l’ensemble faisant face à une toile de couleur vive et unie. Un ordinateur fait office de serveur : le logiciel calcule ce que les deux écrans doivent afficher ainsi que les sons à diffuser et déploie ces données sur les deux sites. Il récupère ainsi en temps réel les images produites par l’ensemble des caméras IP concernées, et effectue une extraction de fond afin d’en détourer les visiteurs, à l’aide d’un modèle statistique basé sur l’histogramme d’une séquence d’images filmée au préalable sans visiteurs. Après différentes étapes de correction (distorsion de la lentille, transformations diverses, …) le logiciel compose ensuite les images des visiteurs entre elles pour obtenir une seule image détourée qui sera ensuite utilisée par le « module » en cours d’exécution. Toutes ces opérations de traitement d’image sont effectuées en GPGPU, c’est-à-dire que le logiciel exploite les ressources matérielles de la carte graphique de l’ordinateur pour en accélérer et paralléliser les calculs, menant à d’importants gains de performance nécessaires au fonctionnement en temps réel.

Un module correspond à un des décors précédemment décrits. Il est chargé de produire une image à afficher (définition de 1600×600) ainsi que le son à diffuser. En particulier, les modules Machine Infernale et Nature partagent un outil générique de simulation de particules lui aussi écrit en GPGPU, et qui permet en particulier :
– de simuler plusieurs milliers de particules ainsi que les interactions entre elles (fluides),
– de gérer les collisions des particules entre elles, avec le décor et avec les images détourées des visiteurs en mouvement, grâce à diverses techniques permettant de transmettre des impulsions du visiteur aux particules et aussi d’éviter que des particules ne traversent le corps des joueurs lors de mouvements importants,
– de gérer différents modes de rendu des particules,
– de gérer plusieurs types de particules simultanément à l’écran.

L’ensemble des opérations de rendu sont effectuées par la carte graphique (utilisation du framework Xna) ce qui permet à l’application de fonctionner en temps réel. Le moteur de rendu mélange éléments 2D animés, particules et objets 3D à l’écran pour un rendu fluide et esthétique.

Une fois que le module a terminé la génération d’une image ainsi que des échantillons sonores à diffuser, ces informations sont compressées en utilisant un format de compression audio/vidéo classique, puis envoyées à travers le réseau vers l’ensemble des sites secondaires qui sont gérés par des ordinateurs dédiés, exécutant un logiciel « client » qui va se charger de décompresser et de diffuser ces données.

L’ensemble des paramètres de l’application peuvent être modifiés en temps réel depuis une interface de configuration sur le serveur, offrant bon nombre de réglages et de personnalisations. Des règles temporelles peuvent aussi être programmées depuis un gestionnaire d’évènements afin de faire s’enchaîner les modules dans le temps.

Gallerie d'images