Réalisations

Personnage virtuel Dimmy – Dimension 3

A l’occasion du salon Dimension 3 et en partenariat avec ses organisateurs, SIP Conseil a animé en temps réel la mascotte de l’exposition, Dimmy, sur différents supports d’affichage modernes en exploitant son logiciel spécialisé en animation de personnages virtuels temps-réel, Character Player.

Personnage virtuel Dimmy

L’installation consiste en une surface de projection couverte par deux vidéoprojecteurs polarisés, ce qui permet aux spectateurs de visualiser des images en relief grâce à des lunettes passives. A coté de ce dispositif se trouve un Dreamoc (www.dreamoc.com) qui permet d’afficher des images semblant flotter dans les airs à la façon d’un hologramme et observable depuis trois points de vue différents. Enfin, un jeu de haut-parleurs diffuse du son dans la pièce. A travers cette installation, le personnage virtuel Dimmy s’anime sur ces différents supports et se transporte de l’un à l’autre en interagissant avec les spectateurs.

    • Client : Dimension 3
    • Projet : Dimmy
    • Dates : Dimension 3 Festival Mai 2011
    • Expertise : C#, WPF, Direct X, multi-écrans, rendu haute qualité temps réel, interactivité, lipsync, relief, hologramme

Réalisation technique

Le personnage virtuel Dimmy est contrôlé par un animateur qui lui prête sa voix et pilote ses gestes à l’aide d’un joystick et d’un clavier grâce au logiciel Character Player, un produit développé par SIP Conseil pour répondre à ses besoins en matière d’animation de personnages virtuels en temps réel.

Character Player

Le logiciel Character Player est entièrement développé en C# et exploite notre propre framework développé en interne chez SIP Conseil. Sa fonction est l’affichage et l’animation d’une scène 3D par le biais de divers périphériques (clavier, souris, micro, joystick, WiiMote, etc.), tout en offrant un maximum de flexibilité en terme de rendu, d’animation et d’amélioration. Pour ce faire, il utilise une architecture interne modulaire qui est pilotable par un langage de script spécialisé, ce qui permet de personnaliser grandement l’application pour chaque personnage animé. Il utilise ensuite le format COLLADA pour importer ses scènes 3D, ce qui donne beaucoup de libertés aux infographistes pour concevoir leurs univers et leurs personnages. De plus, il utilise un système de rendu très modulaire offrant une totale liberté dans la programmation de shaders et l’intégration de techniques de rendu complexes, et qui permet aussi d’adapter le rendu en fonction des performances de la machine. Enfin, un système de plug-ins permet d’étendre les fonctionnalités du logiciel pour répondre à des besoins particuliers. Voici une liste non exhaustive des autres fonctions de Character Player :
– Animation faciale en temps réel à partir du micro (lipsync).
– Mélange dynamique d’animations avec interpolation des clés d’animation et cinématique inverse avec contraintes sur une chaîne de joints.
– Plusieurs modes de rendu supportés : plein écran, fenêtré, stéréoscopique ou Dreamoc.
– Diverses techniques de rendu implémentées d’office dans le moteur : normal mapping, shadow mapping, profondeur de champ, HDRI, bloom, etc.
– Lecture de vidéos dans la scène 3D, textures animées.
– Support clavier, souris, joystick, manette Xbox 360, WiiMote, contrôleur MIDI, et possibilité de contrôle à distance.

Sequencer (Plug-in)

Un des plug-ins pour Character Player est le Sequencer. Il propose une interface en WPF qui permet de créer des séquences d’animation pour un personnage. Sa fenêtre propose une piste horizontale par bouton et axe de joystick utilisé pour le pilotage du personnage en question. L’utilisateur peut ensuite enregistrer, jouer ou modifier les données sur ces pistes afin de composer l’animation de son choix. Il peut aussi sélectionner un fichier audio pour le lipsync du personnage. Une fois l’animation réalisée, il peut la sauvegarder dans un fichier qu’il pourra rééditer à volonté, ou produire une vidéo de la séquence avec plusieurs options disponibles, comme la possibilité de générer une vidéo de masque représentant les zones transparentes de l’image qui pourra être utilisée pour un montage vidéo ou encore la production d’une vidéo en flash transparente.

Gallerie d'images