Dessin 3D
Sommaire
- 1 Cahier des charges
- 2 Suivi de l'avancement du Projet
- 2.1 Semaine 1 (26/01/2015)
- 2.2 Semaine 2 (02/02/2015)
- 2.3 Semaine 3 (09/02/2015)
- 2.4 Semaine 4 (16/02/2015)
- 2.5 Semaine 5 (23/02/2015)
- 2.6 Semaine 6 (09/03/2015)
- 2.7 Semaine 7 (16/03/2015)
- 2.8 Semaine 8 (23/03/2015)
- 2.9 Semaine 9 (30/03/2015)
- 2.10 Semaine 10 (06/04/2015)
- 2.11 Semaine 11 (13/04/2015)
- 2.12 Semaine 12 (20/04/2015)
Cahier des charges
Présentation générale du projet
Objectif
Le but du projet consiste à réaliser un système de dessin en 3 dimensions dans un environnement de réalité virtuelle.
Contexte
Le projet s'inscrit dans une collaboration avec l'équipe MINT[1] de l'IRCICA. L'objectif de l'équipe consiste à rechercher de nouvelles méthodes d'interaction Homme - Machine. Le système aurait avant tout un objectif artistique, en l'occurence le dessin de lignes sur un font neutre. Cependant il est possible d'imaginer d'autres applications, comme par exemple utiliser ce système avec la Réalité Augmentée[2] ou dans la conceptions de bâtiments pour l'architecture.
Description du projet
Le projet consiste en le développement d'une application qui utiliserait les données d'un système de suivi de mouvements pour enregistrer les gestes d'un utilisateur. Ces données seront alors utilisées pour générer des lignes dans un environnement virtuel. L'utilisateur étant muni d'un Oculus Rift, il pourra alors voir en temps réel les dessins qu'il crée avec ses gestes.
Si cette étape du projet est achevée rapidement, d'autres options pourront éventuellement être mises en place, comme par exemple une méthode de sélection de l'épaisseur du trait.
Choix techniques
Matériel
Le matériel incontournable est un casque de réalité virtuelle. Dans notre cas nous utiliserons l'Oculus Rift. L'autre grosse partie de ce projet consiste à réaliser un suivi de position des mains de l'utilisateur.
Pour ce faire, nous avons pensé à différents éléments de réponse :
- Un suivi basé sur l'utilisation d'une ou plusieurs Kinect : on suit un point défini par la main de l'utilisateur de manière distante.
- Utilisation de WiiMote : on utilise les accéléromètres pour calculer les variations de position. Cette méthode donnerait probablement des résultats moins précis.
- Utilisation d'une caméra de suivi comme la caméra Pixy[3].
La solution retenue est celle proposée par M. Grisoni qui est la caméra AR-Track[4]. Comme ce matériel est performant et disponible à l'IRCICA, les autres solutions envisagées ont alors été abandonnées.
Logiciel
Pour le développement logiciel, nous utiliserons les SDK des caméras AR-Track et de l'Oculus Rift.
Le choix du moteur graphique pour la génération de l'environnement 3D de l'Oculus Rift s'est porté sur Unity[5]. En effet, les personnes s'occupant de la post production des dessins travaillent avec ce moteur graphique. De plus, il est plus facile d'utiliser Unity que de programmer sous OpenGL.
Étapes du projet
Étape 1
☐ Prise en main du SDK des caméras AR-Track. ☐ Génération d'un fichier .xml contenant des données de positions et de temps d'un mouvement.
Étape 2
☐ Prise en main du SDK d'oculus Rift.
☐ générations des premiers graphismes avec Unity.
Suivi de l'avancement du Projet
Semaine 1 (26/01/2015)
Nous avons pris rendez-vous avec M. Grisoni, et avons pu le rencontrer, ainsi que l'artiste Pauline Dechalendar et ses encadrants, le mercredi après midi. Nous avons alors discuté pour arriver à transcrire de manière technique les souhaits artistiques de Mlle. Dechalendar, et ainsi commencer à envisager des solutions techniques.
Semaine 2 (02/02/2015)
Semaine 3 (09/02/2015)
A faire : Prendre en main le SDK des caméras AR-Track et enregistrer les informations de position et de temps pour chacun des points suivis. Générer un premier fichier qui servira de base d'enregistrement des informations. Ce fichier test sera envoyé à la post production pour vérifier que l'édition puisse se faire. Le format retenu pour l'instant est le .xml
.
Semaine 4 (16/02/2015)
Semaine 5 (23/02/2015)
A faire : Prendre en main le SDK de l'Oculus Rift et Unity pour réaliser une première version très basique de l'application. Seule la fonction de dessin de ligne sera implémentée.