VISITE AUTOMATIQUE GUIDE SOUS VREng - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

VISITE AUTOMATIQUE GUIDE SOUS VREng

Description:

monde visiter comprenant de nombreux objets qu'on trouve sous VREng : portes vers d'autres mondes, objets, animations, multimedia... Difficult s majeures: ... – PowerPoint PPT presentation

Number of Views:30
Avg rating:3.0/5.0
Slides: 12
Provided by: CURI1
Category:

less

Transcript and Presenter's Notes

Title: VISITE AUTOMATIQUE GUIDE SOUS VREng


1
VISITE AUTOMATIQUE GUIDÉE SOUS VREng
2
Fonctionnement de VREng
3
Fonctionnement de VREng
  • 3 aspects
  • rendu 3D
  • Gestion des données a travers un réseau
  • Interaction entre objet et utilisateur
  • Principe des interaction entre objets
  • Tous les objets dérive dune meme class WObject
  • Tous les objets on les memes propriété
  • Une position
  • Une taille
  • Un comportement (sensible a la gravité, au
    collision)

4
Fonctionnement de VREng
  • Description dun monde
  • Fichier .vre syntaxe propre a vreng
  • Format de description dobjets (XML-like)
  • lttype
  • name"name"
  • pos"x,y,z,az,ax"
  • attribut"value" ... gt
  • ltsolid geometry attribut"value" ... /gt
  • child node
  • lt/typegt
  • Le fichier est parsé pour chaque objet décrit un
    objet est créé est les variables lui sont alloués.

5
Gestion des collisions
List dobjet du monde
List dobjet du monde
Boucle principale
Mise a jour du monde
Boucle principale
Mise a jour du monde
  • Y a-t-il collision entre objet?

Appeler la fonction dintersection de lobjet
collisionné
6
Création de lobjet Guide(1)
  • Spécification de lobjet
  • Un objet qui emmène lutilisateur à travers un
    monde pour lui faire visité celui- ci
  • Possibilité de séchapper de la visite et de la
    reprendre
  • Ne pas faire appel à une application externe à
    Vreng.
  • Solution
  • Création dun objet type tapis planche à roulette
  • Lutilisateur est déplacé lorsquil rentre en
    collision avec lobjet. Lobjet sarrête quand il
    ny a plus collision.

7
Création de lobjet Guide(1)
  • Principe de lobjet guide
  • si collision quelle objet est en collision?
  • Si objet user
  • On regarde à quelle position est lobjet
  • On la compare avec la trajectoire définie dans le
    fichier de description des mondes
  • On effectue un déplacement élémentaire
  • Y Y(Yb-Ya)kVnormalisé
  • X X(Xb-Xa)kVnormalisé
  • Si Zcst sur trajectoire ZZk
  • Sinon ZZ 3k
  • Kpas du deplacement elementaire, a et b 2
    points de la trajectoire
  • Problème
  • il faut gérer la gravité
  • La colision nest pas toujours bien detecté
  • Autres fonction ajoutées
  • Possibilité datteindre lobjet avec la fonction
    goto
  • Possibilité de manipuler lobjet

8
Création dun monde virtuel
  • But du projetvisite de musée par exemple.
  • gtmonde à visiter comprenant de nombreux objets
    quon trouve sous VREng portes vers dautres
    mondes, objets, animations, multimedia
  • Difficultés majeures
  • -Ajuster la position des objets
  • gtarc de cercle en périphérie du monde
  • -Ajuster lorientation des objets
  • Format de description dobjets (XML-like)
  • lttype
  • name"name"
  • pos"x,y,z,az,ax"
  • attribut"value" ... gt
  • ltsolid geometry attribut"value" ... /gt
  • child node
  • lt/typegt
  • Demonstration de OurWorl.vre
  • url/REV/projet/final

9
La trajectoire(1)
  • But du projet est décrire trajectoire dans
    fichier .vregtcréation dun attribut chemin.
    Trajectoire est une suite de points, déplacement
    rectiligne de lavatar.
  • Parsage des données écrites dans le .vre,
    nécessité de modèle décriture de chemin
  • Chemin"(x1,y1,z1,v1)(x2,y2,z2,v2)(x3,y3,z3,v3)!
    "
  • Le fichier parse.cc prend les 4 valeurs de
    chaque quadruplet et les place dans le tableau
    chemin204.

10
La trajectoire(2)
  • Le fichier guide .cc reprend ces valeurs et
    calcule les déplacements élémentaires à
    effectuer. Par exemple, du point i au point i1(i
    appartient à 0,19)
  • pos.x(chemini10- chemini0)
    chemini3/norme(i,i1)
  • pos.y(chemini11- chemini1)
    chemini3/norme(i,i1)
  • pos.z(chemini12- chemini2)
    chemini3/norme(i,i1)
  • Arrivé au point i1, lindice i sincrémente et
    le calcule recommence avec les nouvelles valeurs.
  • Normalisationgtmême vitesse quelque soit la
    taille du segment.
  • Pbon arrive pas au point exact (forçage en
    entier) et donc quelques surprises à améliorer
    !!!

11
DEMONSTRATION
Write a Comment
User Comments (0)
About PowerShow.com