ToDoListOMK

Un article de OpenMASKWiki.

Jump to: navigation, search

Une liste des choses à réaliser pour faire progresser la capitalisation, notamment autour d'OpenMASK.
De plus, je suis convaincu que l'ingénierie dirigée par les modèles, autour d'un langage déclaratif des propriétés des applications, de ses objets et des outils de l'utilisateur, permettrait de capitaliser au delà d'OpenMASK, .

                Mise à jour de août 2012

Sommaire

Portage des acquis OMK3

  • client VRPN : réalisé
  • visu OpenSG : en cours avec un passage à OpenSG2 en plus
  • service sonorisation spatial 3D basé OpenAL (voir ce qu'a initié Laurent Aguerreche et ce qui existait dans OMK3)
  • service physique ODE avec la démo scenic

consolidation de l'existant

  • verifier les combinaisons d'attachements dans la cvii (suppoterBy et link)
  • étudier l'accumulation des décalages entre des objets dépendants au cours d'un pas de simullation. voir comment une acquisition systématique à t-dt apporterait une amélioration.
  • realiser un tutoriel sur les objets interactifs et les outils interacteurs
  • réaliser un outil interacteur simple
  • Expliciter l'architecture modulaire du noyau afin de permettre un remplacement aisé d'un des modules par une nouvelle version plus performante, innovante ou encore objet de recherches
    • associer une nouvelle section dans les paramètres du contrôleur pour le chargement dynamique de plugins pour le noyau
include STDKernelPlugins
include MyKernelPlugins

Tutoriels et Démos

  • liste des séquences types de programmation OpenMASK
    • OMK basique
    • OMK VR
  • liste de séquences de configuration de composants OMK
  • Tutoriel sur l'initialisation, la maninipulation des Transform tant dans un fichier de configuration que dans un code OpenMASK
  • Exemples de chainage d'objets suiveurs, voir les pb de latence
  • demo : Embarquement d'un objet
    • avec les cvii : je travaille sur le quai de la gare; le train arrive; je rentre dans le train; éventuellement la cvii se positionne dans le wagon (au point d'ancrage d'intervention); je travaille
      • je sors du train; le train repart
      • je pars avec le train
    • avec des objets mobiles :
      • je prends un objet; je le pose sur une table roulante; l'objet se déplace avec la table
      • Est-ce qu'il existe une solution sans faire de la physique ?

Autres études et projets

  • Les usages collaboratifs de plusieurs CVII
  • Approfondir les propriétés d'interactions collaboratives des objets et des outils : les exprimer dans un langage déclaratif (suites de notre action dans Part@ge)
  • Pseudo physique
    • Surface sensible : attractive attachante repoussante
      • Si un objet approche de la surface à une distance minimale sans être supporté il devient attaché
      • Si .... La surface devient rouge
    • Collision vibrante
      • Si un objet entre en collision avec cette surface il devient rouge et l'outil vibre
  • Plateau de transport attaché à une cible de ceinture
  • Table à roulettes attachée à un pied photo avec contrainte sur Y
  • Ceinture porte flystick
  • Bouton déroulant  : Affiche sur un plan3D face à l'utilisateur le déroulement des valeurs (choix de valeurs)
    • Bouton sélection
    • Bouton détachement / attachement
  • Tirer la scene dans la cvii
  • interface tangible vibrant à 1, 2 mains à 2 operateurs 4mains
  • Double bras de déplacement de la cvii

Approche Ingénierie dirigée par les modèles (IDM)

Dans notre contexte "Recherche", chaque étude peut se voir imposer un environnement de développement spécifique, chaque étude va intervenir sur un sous-ensemble des caractéristiques de la réalité virtuelle ou de la réalité augmentée. Il me semble utopique d'imposer à l'ensemble des équipes concernées, un environnement de développement ou de démonstration unique.
Il me semble plus réaliste de chercher à unifier ou à partager nos environnements autour d'un langage déclaratif des propriétés des applications, de ses objets, et des outils de l'utilisateur. Cela ne peut se mettre en place qu'en travaillant au niveau des modèles sous un environnement de développement générique comme Eclipse.
Ces réflexions, appliquées dans le contexte de notre environnement d'exécution OpenMASK, pourraient se traduire ainsi :
Il faudrait, d'une part, reprendre et poursuivre les travaux initiés, autour d'Eclipse et mySQL, par Yves Bekkers et Benoit Chanclou (voir les méta types d'OMK), et d'autre part, reprendre la proposition d'ADT Inria 2008 "Atelier de conception, générique, extensible, basé modèles pour la réalité virtuelle" que nous avions faite avec Thierry Duval.

  • Définir un nouveau format XML des fichiers de configuration OpenMASK (voir ce qui a été initié dans GVT par Benoit Chanclou et Xavier Larrode)
  • Reprendre et consolider le loader Collada avec les nouveaux outils d'analyse de la communauté Collada (voir la version de Floriant Nouviale pour Part@ge)
  • générateur de squelette de composant OMK à partir d'une déclaration de ses attributs et parametres
  • générateur de plugin OMK
  • consolider la gestion d'une base de données des composants OMK
  • éditeur de fichier de configuration associé à la BD OMK (est-ce que cela pourrait se combiner avec Goose de Xavier Larrode ?)
  • Définir un langage XML de déclaration des propriétés (sensorielles, physiques, comportementales, etc) d'un environnement virtuel (PDDL Properties Driven Design Language)
  • Réaliser un transformateur de PDDL vers Collada étendu
Navigation