Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parEvonne Gervais Modifié depuis plus de 10 années
1
Conception et développement d ’une interface entre un environnement de réalité virtuelle et un périphérique d ’interaction
2
Objectifs Permettre la manipulation et le déplacement des objets de la simulation à l’aide du périphérique. Utiliser le retour de force pour améliorer l'immersion de l’utilisateur.
3
SpaceBall Boule avec position de repos. 6 degrés de libertées (translation + rotations) transfert de donnée via port série RS-232.
4
MS Side Winder Force feedback Manche à 3 degré de liberté : translation dans en X et Y et rotation autour de l’axe Z. Retour de force sur les axes X et Y. Bouton champignon à 9 positions dont position de repos.
5
VRML : Introduction Navigateur VRML : plug-in pour navigateur HTML. Fichier VRML : contient une simulation ou scène VRML. Scène VRML : description géométrique dans E 3 d’un ensemble d’objets 3D (Nœud). Et description du comportement des objets.
6
VRML : Scène Scène sous forme d’arbre : Racine Transform translation -5 0 0 rotation 1 0 0 3.14 Box size 1 2 3 Transform translation 5 0 0 Sphere radius 2.5 Shape Appearance Shape Appearance
7
VRML : Comportement Evénement entrant : demande de modification d’un attribut d’un nœud. Evénement sortant : générer lors de la modification d’un attribut. Route : Association d’attribut sortant et entrant. TimeSensorPositionInterpolator Transform fraction_changed set_fraction value_changed set_translation
8
VRML : Script Script interne : nœud recevant et générant des événements. Ecrit en Java ou JavaScript. Script externe : applet java communiquant avec le navigateur VRML via l’interface EAI. Dans les deux cas possibilité d’accès direct à la scène. C-à-d sans route statique.
9
Application : Interaction Interaction utilisateur : modification de nœud Transform. Quel nœuds Transform ? –Nommé Lourd –Attribut supplémentaire parcours du graphe de la scène. (contrainte : nommer la racine du graphe)
10
Application : Point de vue Mouvement induit par le périphérique intuitif nécessite l’orientation du point de vue. Utilisation du nœud ProximitySensor Déplacement du point de vue via le nœud Viewpoint. Pas naturel. Le nœud Viewpoint n’est pas prévu pour cela. (contrainte sur les nœuds Viewpoint)
11
Application : Collisions Détection des collisions nécessite la géométrie et la position des objets. –Position : parcours du graphe de la scène. –Géométrie : non accessible au script, remplacée par un ensemble de sphères. (Rajout manuel, possibilité de le faire automatiquement.)
12
Application : Retour de Force Valeur renvoyée par le périphérique = force, interprétée comme une vitesse par nécessité. Calcul du retour de force nécessite un moteur physique, 4 forces à considérer : –Gravité –Utilisateur via périphérique –Frottement (si collision) –Réaction (si collision)
13
Application : Dynamique FaFa FnFn FlFl FrFr Collision F n = -1 n ( 1 n.F a ) F l = F a + F n F r = -1 l µ || F n || Si || F r || || F l || alors F r = -F l F f = F r + F n = -F a sinon F f = F r + F n F a = F u + F g Pas de collision Pos(t+1) = Pos(t) + F a
14
Problèmes Utilisation de JNI dans une applette installation d’un plug-in au préalable.
15
Conclusion Beaucoup de contrainte lié à l’impémentation, envisager un autre environnement 3D (Java3D, X3D, …). Implémentation d’un moteur physique plus complet. (Gestion du moment d’inertie) Interprétation des données renvoyées par le périphérique comme une vitesse. Justifiée par la facilité d’utilisation.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.