1 / 35

Visualisation de fonds marins.

Visualisation de fonds marins. Présenté par: Alexandre AMALRIC Fabrice FOURNET Mathieu PERROUD. Introduction. But du projet : Import de données topographiques Chargement d’objets (faune, flore…) Édition de trajectoires Texturing & Effets spéciaux Portabilité. Plan. Base du projet :

becca
Download Presentation

Visualisation de fonds marins.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Visualisation de fonds marins. Présenté par: Alexandre AMALRIC Fabrice FOURNET Mathieu PERROUD

  2. Introduction • But du projet : • Import de données topographiques • Chargement d’objets (faune, flore…) • Édition de trajectoires • Texturing & Effets spéciaux • Portabilité

  3. Plan • Base du projet : • 3DTerragen

  4. 3DTerragen & Oceanyd • Outils utilisés • IDE : • Visual C++ Express 2005 • XCode • API & SDK : • wxWidgets • GLEW • OpenGL • Langage : • C++

  5. 3DTerragen

  6. 3DTerragen • Algorithme de visualisation: • « Real time Optimally Adaptating Meshes » (Duchaineau) • Découpage en patchs • Tessellation sélective • Algorithme de « Split and merge » • Critères de découpage • Rendu récursif

  7. 3DTerragen • Limites • Boucles de rendu basiques • Culling 2,5D • Trajectoire simpliste • Consommation mémoire • Portabilité réduite

  8. Plan • Base du projet : • 3DTerragen • Développements effectués : • Lecture de fichiers XYZ

  9. Projet Oceanyd • Support du format .xyz • Relevés sonar • Inversion de la profondeur • Erreurs d’acquisition • Filtrage • Support possible de .xyzb • Données de biocénose

  10. Filtrage • Top Hat Modifié

  11. Plan • Base du projet : • 3DTerragen • Développements effectués : • Lecture de fichiers XYZ • Optimisations du moteur d’affichage

  12. Projet Oceanyd • Optimisations du moteur d’affichage • Frustum culling 3D • Critères de tesselation supplémentaires • Vertex Buffers • Organisation des éléments

  13. Projet Oceanyd • Frustum culling 3D

  14. Projet Oceanyd • Frustum culling 3D • Récupération du frustum OpenGL • M = V * P • Normalisation des plans • Tests sur les demi-espaces • Point • Boite • Sphère

  15. Projet Oceanyd • Critères de tesselation supplémentaires • Possibles grâce au culling • Paliers de résolution • Inspirée du MipMapping • Meilleure répartition des triangles • Optimisation pour Z-Buffer hardware • Tri rapide sur distance

  16. Projet Oceanyd • Vertex Buffer • Batching (un appel par géométrie) • Entrelacé • Indexé • Array : • Utilisation de la RAM • Object : • Utilisation de la VRAM (+ AGP)

  17. Projet Oceanyd • Organisation des éléments • 3 types d’objets (Faune, Flore, Autres…) • Faune et autres dépendants du monde • Flore dépendante des patchs • Culling optimisé

  18. Plan • Base du projet : • 3DTerragen • Développements effectués : • Lecture de fichiers XYZ • Optimisations du moteur d’affichage • Nouvelle méthode d’édition de trajectoire

  19. Projet Oceanyd • Trajectoire • Utilisation d’arcs de splines de Catmull-rom • Passe par les points de contrôles • q(t) = 0.5 * [ t^3 t^2 t 1 ] * [ -1 3 -3 1 ] * [ p0 ] [ 2 -5 4 -1 ] [ p1 ] [ -1 0 1 0 ] [ p2 ] [ 0 2 0 0 ] [ p3 ] • Détection des collisions

  20. Projet Oceanyd • Trajectoire • Classe checkpoint • Possibilité d’ajout de propriétés (temps d’arrêt) • Calcul en 4 étapes • Estimation de la longueur de l’arc • Insertion de points supplémentaires • Calcul des nouveaux arcs • Élévation des points si collision

  21. Projet Oceanyd • Trajectoire

  22. Plan • Base du projet : • 3DTerragen • Développements effectués : • Lecture de fichiers XYZ • Optimisations du moteur d’affichage • Nouvelle méthode d’édition de trajectoire • Réalisme accru

  23. Projet Oceanyd • Réalisme accru • Texturing • UV Planar Mapping • Paramétrisation S et T • Nombre de répétitions/taille du terrain • Animation • Transparence (alpha masking) • Plan d’eau • Boîte d’environnement

  24. Projet Oceanyd • Réalisme accru • Effets spéciaux • Caustiques (multitexturing) • Déformation sous-marine • Matrice de projection animée • Brouillard volumétrique • Immersion • Dérive sous-marine • Cinétique

  25. Plan • Base du projet : • 3DTerragen • Développements effectués : • Lecture de fichiers XYZ • Optimisations du moteur d’affichage • Nouvelle méthode d’édition de trajectoire • Réalisme accru • Support de formats de fichiers multiples

  26. Projet Oceanyd • Formats de fichiers multiples • Bitmaps • PGM, PPM • BMP (gris, 8/24 bits + RLE) • TGA (gris, 8/24/32 bits + RLE) • Classe texture • Détection automatique du format • Chargement OpenGL

  27. Projet Oceanyd • Formats de fichiers multiples • 3D • Chargement de fichiers 3DS triangulés • Gestion d’instances • Matériaux, textures et objets multiples • Affichage VBA • Classe CObject3D • Chargement de modèles • Instanciation • Volumes englobants

  28. Plan • Base du projet : • 3DTerragen • Développements effectués : • Lecture de fichiers XYZ • Optimisations du moteur d’affichage • Nouvelle méthode d’édition de trajectoire • Réalisme accru • Support de formats de fichiers multiples • Portabilité

  29. Projet Oceanyd • Portabilité • wxWidgets, OpenGL • Comportement des compilateurs • Représentation des mots élémentaires • Little / Big Endian • Byte swapping • Coûts en temps de travail

  30. Résultats

  31. Projet Oceanyd • Benchmark • Athlon 64 3200+ (2Ghz), 1Go RAM 400Mhz, Geforce6600GT 128 MO PCI Express 16X, Windows XP Pro SP2 • 3DTerragen VS Oceanyd à 100k triangles texturés haute résolution et effets spéciaux

  32. Projet Oceanyd • Résultats • +2 fois plus rapide • Application portable • Code objet amélioré • Implémentations futures facilitées • 24 classes • Ouverture sur d’autres formats

  33. Projet Oceanyd • Développements futurs • Brouillard sur les objets • Modèles multi résolutions • Effet spéciaux : God Light… • Animation des modèles (key frames) • I.A. • Édition de scripts de scènes

  34. Projet Oceanyd • Ressources • ROAM: http://www.llnl.gov/graphics/ROAM • http://www2.ravensoft.com/users/ggribb/plane%20extraction.pdf • 3DTerragen: http://shingoyab.free.fr/old_project/ROAM/

More Related