SOFAVR 
Simulation Open Framework Architecture 
for Virtual Reality 
SERVICE : DREAM 
EQUIPE PROJET : SOFA 
Sophia-Antipol...
SOMMAIRE 
1. Contextes – Objectifs - Contraintes 
2. SOFAVR et les projets connexes 
3. Bilan- perspectives 
jerome.esnaul...
1 
Contextes – Objectifs - Contraintes 
1.1 Simulation Open Framework Architecture 
1.2 Objectifs et résultats attendus 
1...
1.1 Simulation Open Framework Architecture 
Composants (400) : 
• Visuels 
• Topologique 
• Mapping 
• Calcul ODE / linéai...
1.1 Simulation Open Framework Architecture 
jerome.esnault@inria.fr - SOFAVR 01 Octobre 2012 - 5
1.2 Objectifs et résultats attendus 
Porter SOFA sur des équipements de Réalité Virtuelle : 
• Conserver les scènes et l’i...
1.3 Méthode de travail 
Nouvelles taches Retour d’expériences 
But du sprint: ... 
Durée/date du sprint: … 
INDICATEURS 
T...
2 
SOFAVR et les projets connexes 
2.1 Dépendances, contraintes et structure du projet 
2.2 Fonctionnement du projet 
2.3 ...
2.1 Dépendances contraintes et structure du projet 
Dépendances des projets : 
MPI Autres VRPN Autres OpenGL Qt Autres 
Op...
2.1 Dépendances contraintes et structure du projet 
jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 10
2.1 Dépendances contraintes et structure du projet 
Arborescence du projet (Cmake) : 
Sources 
Bibliothèques Plugins Appli...
2.2 Fonctionnement du projet 
1er Plugin de rendu OpenSceneGraph : 
• Orienté Graphe de Scène 
• Synchrone avec la simulat...
2.2 Fonctionnement du projet 
2nd Plugin de rendu OpenSceneGraph : 
• Orienté Graphe de Scène 
• Visualisation désynchroni...
2.2 Fonctionnement du projet 
Application sofavr : 
• Orienté Graphe de Scène 
• Visualisation désynchronisé de la simulat...
2.2 Fonctionnement du projet 
Le mode cluster (multi machines) : 
LAUNCH 
Machine Node 0 
mpirun 
SOFA threads 
isiVR thre...
2.3 Implication dans les autres projets 
• Création et contribution au projet CMakeTools 
• Ajouts de targets spécifiques ...
3 
Bilans - perspectives 
3.1 Jalonnage 
3.2 Ouvertures 
3.3 Retour d’expériences
Analyse métier & 
fonctionnelle 
Conception générale 
et préliminaire 
1. Compatibilité entre SOFA et OpenSceneGraph 
2. D...
3.2 Ouvertures 
• Amélioration du system d’interaction 3D (ergonomie, affichage, 
périphériques…) 
• Gestion du son spécia...
3.3 Retour d’expérience 
++ Variété des missions 
++ Variété des domaines d’activités à explorer 
++ Possibilité de monter...
PmWiki SofaVR : 
https://www-sop.inria.fr/dream/wiki/SofaVR/SofaVR 
SofaVR sur la forge (demander l’accès): 
https://gforg...
Couches – SOFA<->SOFAVR 
Entrées 
périphériques 
Logique 
Contrôleur d’objets 
Comportement des 
Propriétés 
physiques des...
Couches – SOFA<->SOFAVR 
Application User 
Sound GUI Datas Input 
Framework - 
services 
SceneGraph 
Standard 
C++ 
librar...
Méthode de collaboration : 
Granulation temporelle et informationnelle asynchrone 
Collaboration en session 
Equipe sofavr...
Méthode Agile - codage 
Rapports de tests 
Développements jalon n Développements jalon 
n+1 
Ligne du temps 
Réflexions ja...
Prochain SlideShare
Chargement dans…5
×

ADT SOFAVR jesnault 01-10-12 final presentation 2

336 vues

Publié le

[English bellow]

[FRENCH]
Le travail consistait à créer une extension du projet SOFA (Simulation Open Framework Architecture) nommé SOFAVR portant l’application de simulation physique 3D sur des équipements de Réalité Virtuelle.
Une première partie est d’adapter le rendu 3D séquentiel (mono thread) de SOFA (OpenGL) à un rendu 3D orienté graphe de scène (OpenSceneGraph, multi-thread).
Une seconde partie est d’adapter l’architecture de SOFA aux équipements de Réalité Virtuelle, dans un premier temps dans la salle immersive de Sophia Antipolis, puis dans un second temps dans les autres centres (Rennes).
Voici la dernière présentation des résultats.

[ENGLISH]
The job was to create an extension of the SOFA project (Simulation Open Framework Architecture) nammed SOFAVR, transfering the 3D physical simulation application on Virtual Reality equipments (immersive space, cave...).
The first part was to adapt the SOFA sequential (mono thread) 3D rendering (OpenGL) to render 3D scene graph oriented (OpenSceneGraph in multithread mode).
The second part was to adapt the architecture of SOFA to Virtual Reality equipments, initially in the immersive room of Sophia Antipolis, then in a second time in the other centers (Rennes).
This is the last presentation of results.

Publié dans : Logiciels
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
336
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

ADT SOFAVR jesnault 01-10-12 final presentation 2

  1. 1. SOFAVR Simulation Open Framework Architecture for Virtual Reality SERVICE : DREAM EQUIPE PROJET : SOFA Sophia-Antipolis 01 Octobre 2012
  2. 2. SOMMAIRE 1. Contextes – Objectifs - Contraintes 2. SOFAVR et les projets connexes 3. Bilan- perspectives jerome.esnault@inria.fr - SOFAVR 01 Octobre 2012 - 2
  3. 3. 1 Contextes – Objectifs - Contraintes 1.1 Simulation Open Framework Architecture 1.2 Objectifs et résultats attendus 1.3 Méthode de travail
  4. 4. 1.1 Simulation Open Framework Architecture Composants (400) : • Visuels • Topologique • Mapping • Calcul ODE / linéaire • Champs de forces • Modèles de collisions • Contraintes … Graphe de Simulation : Description XML Application SOFA Interface graphique Qt + rendu OpenGL jerome.esnault@inria.fr - SOFAVR 01 Octobre 2012 - 4
  5. 5. 1.1 Simulation Open Framework Architecture jerome.esnault@inria.fr - SOFAVR 01 Octobre 2012 - 5
  6. 6. 1.2 Objectifs et résultats attendus Porter SOFA sur des équipements de Réalité Virtuelle : • Conserver les scènes et l’interface utilisateur de SOFA • S’adapter aux différents dispositifs d’affichage • Désynchronisation de la simulation et du rendu • Avoir des Interactions Homme-Machine favorisant l’immersion Résultats attendus : • Apporter une brique technologique innovante supplémentaire à SOFA • Promouvoir l’utilisation d’équipements de Réalité Virtuelle • Favoriser les échanges inter-INRIA (national) en contribuant à l’homogénéisation d’une architecture compatible avec les différents équipements de Réalité Virtuelle. jerome.esnault@inria.fr - SOFAVR 01 Octobre 2012 - 6
  7. 7. 1.3 Méthode de travail Nouvelles taches Retour d’expériences But du sprint: ... Durée/date du sprint: … INDICATEURS Taches jerome.esnault@inria.fr - SOFAVR 01 Octobre 2012 - 7 IMPORTANCE TO DO RESERVED DONE Non planifiés : … Suivant : … pts tps SCRUM Taches Taches Taches Taches
  8. 8. 2 SOFAVR et les projets connexes 2.1 Dépendances, contraintes et structure du projet 2.2 Fonctionnement du projet 2.3 Implications dans les autres projets
  9. 9. 2.1 Dépendances contraintes et structure du projet Dépendances des projets : MPI Autres VRPN Autres OpenGL Qt Autres OpenSceneGraph (SVN-CMake) isiVR (GIT-CMake) SOFA-DEV (SVN-QMake) SOFAVR (GIT-CMake) cmakeTools VCoRE (GIT-CMake) cmakeTools cmakeTools CMakeTools (GIT-CMake) jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 9
  10. 10. 2.1 Dépendances contraintes et structure du projet jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 10
  11. 11. 2.1 Dépendances contraintes et structure du projet Arborescence du projet (Cmake) : Sources Bibliothèques Plugins Applications sofavr sofaOsg SOFA QtOsgViewer StandaloneOsgViewer jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 11 helper helperOsg helperSofa sofaApp isiSofa isiVR SofaWand useSofaApp sofavr
  12. 12. 2.2 Fonctionnement du projet 1er Plugin de rendu OpenSceneGraph : • Orienté Graphe de Scène • Synchrone avec la simulation • Embarqué dans l’interface graphique utilisateur OSG Root OSG utils (camera/background…) OSG Sofa visual OSG Sofa debug draw OSG Sofa visual draw jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 12
  13. 13. 2.2 Fonctionnement du projet 2nd Plugin de rendu OpenSceneGraph : • Orienté Graphe de Scène • Visualisation désynchronisé de la simulation (multi-thread) • Détachée de l’interface graphique utilisateur Main thread (simu+GUI SOFA) Can write data? SOFA DATAS Can read data? OSG viewer threads jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 13
  14. 14. 2.2 Fonctionnement du projet Application sofavr : • Orienté Graphe de Scène • Visualisation désynchronisé de la simulation (multi-thread) • Détachée de l’interface graphique utilisateur • Utilise isiVR pour la portabilité vers les équipements de RV • Une seule application pour différents usages/équipements Le mode Single (mono machine) : Machine Node 0 Send GUI events Rescale visualisation Send viewer events Rescale 3D interaction Main thread (simu+GUI SOFA) Can write data? SOFA DATAS Can read data? isiVR viewer threads jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 14
  15. 15. 2.2 Fonctionnement du projet Le mode cluster (multi machines) : LAUNCH Machine Node 0 mpirun SOFA threads isiVR threads Machine Node 1 SOFA threads isiVR threads • • • Events and synchro synchro Machine Node 4 SOFA threads isiVR threads Tracking system Périphérique trackés jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 15
  16. 16. 2.3 Implication dans les autres projets • Création et contribution au projet CMakeTools • Ajouts de targets spécifiques • Ajouts de modules / macros / fonctions • Collaboration au projet SOFA (refactorisation GUI et Viewer) • Déploiement de SOFAVR dans l’équipe SOFA • Passage progressif à CMake • Collaboration au projet isiVR (fonctionnalité, maintenance) • Accompagnement/support pour isiVR et la salle immersive • Participation aux coding-sprint (déploiement de CMakeTools) • Collaboration au projet VCoRE (SOFAVR comme base de travail) • Participation aux réunions et formations sur les outils et codes existant • Participation aux coding-sprint (déploiement de CMakeTools) • Gestion CMake/GIT des différents dépôts des projets et documentation continue de l’ensemble jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 16
  17. 17. 3 Bilans - perspectives 3.1 Jalonnage 3.2 Ouvertures 3.3 Retour d’expériences
  18. 18. Analyse métier & fonctionnelle Conception générale et préliminaire 1. Compatibilité entre SOFA et OpenSceneGraph 2. Désynchronisation et multi-fenêtrage 3. 1ère version de sofavr 4. Mise en place d’une méthode agile basé sur SCRUM 5. Création du projet CMakeTools et déploiement / utilisation sur les projets 6. Amélioration du multi-thread et de la synchro 7. Ajouts des interactions 3D de SOFA et gestion de la préservation des scènes (mise à l’échelle) 8. Documentation (WIKI – code) Codage Tests & assemblages Intégration et validation Conception Cycles itératifs Septembre 2012 3.1 Jalonnage - bilan Décembre jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 18 2010
  19. 19. 3.2 Ouvertures • Amélioration du system d’interaction 3D (ergonomie, affichage, périphériques…) • Gestion du son spécialisé • Interactions 3D multiple • Abstraction complète de graphe de scène • Ajouter d’autres composants visuels SOFA (lumières, shaders…) • Gestion de la configuration de sofavr/isiVR dans un composant • Gestion des systèmes haptiques… • Stabilisation/amélioration de CMakeTools (Ctest, Cpack, Cdash)… • Amélioration de la conception coté SOFA pour proposer plus d’interfaces aux autres projets (pour utiliser SOFA plus facilement)… • Développement du mode composite et simulation d’isiVR… jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 19
  20. 20. 3.3 Retour d’expérience ++ Variété des missions ++ Variété des domaines d’activités à explorer ++ Possibilité de monter en compétence ++ Environnement de développement ++ Collaboration inter-centre, inter-plateforme, franco-anglaise/franco-allemande jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 20
  21. 21. PmWiki SofaVR : https://www-sop.inria.fr/dream/wiki/SofaVR/SofaVR SofaVR sur la forge (demander l’accès): https://gforge.inria.fr/projects/sofavr/ Merci de votre attention Des questions ?
  22. 22. Couches – SOFA<->SOFAVR Entrées périphériques Logique Contrôleur d’objets Comportement des Propriétés physiques des objets Monde Physique objets Mise à jour position / déformation / Rendu visuel Monde Audio Rendu de l’objet à min 25 images / s Moteur de simulation Sources sonores des objets son de collisions OpenSceneGraph SceneManagement Graphe de scène RessourceManagement Materiaux Textures Animations Outils Math String Logging Viewer Réalité virtuelle jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 22
  23. 23. Couches – SOFA<->SOFAVR Application User Sound GUI Datas Input Framework - services SceneGraph Standard C++ libraries GL OpenAL… GPGPU C / C++ / scripts VRPN Sound card Graphic card CPU Hardware I/O clavier souris joystick - ART… Modeler Sofa - GUI Sofa - Ressources Sofa - Components Sofa - Viewer Sofa – Helper (tools) Sofa - Core Computer Cluster Immersive room jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 23
  24. 24. Méthode de collaboration : Granulation temporelle et informationnelle asynchrone Collaboration en session Equipe sofavr (DREAM) Modèle 3C : Equipe sofa-dev PmWiki Communication MediaWiki-TracWiki- Repo forge SOFAVR User 1 NF 1 User 2 NF 2 User 3 NF 3 User 4 NF 4 HUDSON-chat SOFA User 1 User 2 User 3 User 4 CMake Coordination QMake GIT Collaboration SVN jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 24
  25. 25. Méthode Agile - codage Rapports de tests Développements jalon n Développements jalon n+1 Ligne du temps Réflexions jalon n+1 & corrections BUG version n - i Version 1.0.0 fonctionnelle Version 1.0.1 fonctionnelle BUG Utilisateurs finaux Version 1.0.1 fonctionnelle Mesure satisfaction clients Avec i le nombre d’itérations précédentes jerome.esnault@inria.fr - SOFAVR 19 Septembre 2011 - 25

×