Techniques de détection des collisions statiques et accélérations

Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Aires et périmètres.
CARACTERISTIQUES D’UN ENSEMBLE DE FORCES
Fabrice Lauri, François Charpillet, Daniel Szer
AUTRES ASPECTS DU GPS Partie I : tolérance de Battement
Licence pro MPCQ : Cours
Hierarchical Z-Buffer Visibility
Modélisation par Surfaces Implicites à Squelettes Complexes
RENDU DE TERRAIN Problématique : Rendre une très large zone de terrains en la simplifiant au maximum pour réduire le nombre de polygones à afficher. A.Bailly.
Simplification Out-of-Core des modèles polygonales complexes
Ray Tracing Acceleration Techniques A Survey of Ray Tracing Acceleration Techniques James Arvo et David Kirk Ray Tracing on Programmable Graphics Hardware.
Calcul géométrique avec des données incertaines
Borhen LOUHICHI Merci, Monsieur le président,
Programme de seconde 2009 Géométrie
Les Prepositions.
Introduction au e-commerce Intervenant Régis BACHER /01/2014 Présentation 1.
26/03/2017 ANR CARPEiNTER Approche multi-pas multi-échelle Lyudmyla YUSHCHENKO & Frédéric GOLAY Institut.
Génération interactive dimages projectives : Application à la Radiothérapie Pierre BLUNIER Du 01/12/2002 au 28/03/2003 Centre Léon Bérard.
A Pyramid Approach to Subpixel Registration Based on Intensity
Auteurs : P. Hellier C. Barillot E. Mémin P.Pérez
1 Intégration numérique garantie de systèmes décrits par des équations différentielles non-linéaires Application à l'estimation garantie d'état et de paramètres.
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Lancer de rayons interactif
Construction de Box-Plot ou diagrammes en boîtes ou boîtes à moustaches Construire une boîte à moustaches …
1 Analyse de la variance multivariée Michel Tenenhaus.
Animation de solides en contact par modèle physique
Des RRA à la diagnosticabilité
Réglage et protection des réseaux électriques
Eric Guilbert, Marc Daniel *, Eric Saux
Détection de collision Spécifications applicatives
Application des algorithmes génétiques
Classification Multi Source En Intégrant La Texture
Introduction à la Théorie géométrique de la diffraction
Intersection de Surfaces de Subdivision
Cours Corporate finance Eléments de théorie du portefeuille Le Medaf
INDUSTRIE sa Tel : 0033(0) Fax : Projet: SKIP CAPSULES – v.1 Client: CARDIVAL HEALTH.
Introduction à la Théorie géométrique de la diffraction
1.Un rang de données multicolores 2. Deux permutations des n premiers entiers 3. b permutations des k premiers entiers 4. Choix de n points dans [0,1]
Interprétation de séquences dimages pour des applications MédiaSpace Alberto AVANZI François BREMOND Monique THONNAT Projet ORION INRIA de Sophia Antipolis.
Mémoires associatives
Courbes de Bézier.
OBJETS ÉLÉMENTAIRES DANS L’ESPACE À TROIS DIMENSIONS
Corrélation Principe fondamental d’une analyse de corrélation
L’étrange ballet de la planète MARS
Les maths en francais 7ième année.
Gilbert TOUT NEST QUE CALCUL Vous vous êtes certainement déjà demandé ce que voulait dire « se donner à 100% » ?
Réaction aux collisions dans les animations physiques François Faure, Olivier Galizzi GRAVIR Projet commun CNRS,INRIA,INPG,UJF 1 1.
SYSTEMES MIXTES MOBILES ET COLLABORATIFS
Distance de BORGEFORS Et Applications
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
SUJET D’ENTRAINEMENT n°4
Aire d’une figure par encadrement
Astres observés: Étoiles. Constellations.
IFT3355: Infographie Visibilité
L’adaptativité pour un solveur de l’équation de Vlasov
NORMALISATION DES LANGAGES DE PROGRAMMATION des Automates Programmables Industriels CEI
Vision directe Diamètre apparent
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
I MAGIS est un projet commun CNRS - INPG - INRIA - UJF iMAGIS-GRAVIR / IMAG Optimisation à base de flot de graphe pour l'acquisition d'informations 3D.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
Etude de la précontrainte dans les systèmes mécaniques
Caractérisation texturale des surfaces boisées dans une image Ikonos de la région de Montréal Pierre Bugnet Langis.
Modélisation géométrique
Monitoring Détection de séquences vidéo en temps réel dans une grande base de données Julien Law-to 23/07/2004.
Electrostatique- Chap.2 CHAPITRE 2 CHAMP ELECTROSTATIQUE Objectif :
Potentiel électrostatique
Un état de l’art sur les logiciels de détection de collision
Les bases de la modélisation Primitives simples et CSG.
Plan du cours Cours 1,2 : le pipeline graphique
Tétraédrisation de domaines volumiques avec des hiérarchies adaptatives Par A. Duprat et R. Abelé Suivit par M. Uribe-Lobello.
Transcription de la présentation:

Techniques de détection des collisions statiques et accélérations Philippe Meseure Équipe Graphix - LIFL - Université de Lille 1 Projet Alcôve - INRIA Futurs

Plan Problématique de la détection statique Détection entre primitives Accélération de la détection Conclusion

Problématique Hypothèses Détection exacte vs accélération De nombreux objets Au moins un objet mobile Détection exacte vs accélération Détection statique Détecter les recouvrements d'objets : Détection d'intersection vide Distance de séparation entre objets Intersection des surfaces Mesure des interpénétrations (profondeur, volume…) Calcul de l'intersection Purement 3D, sans intervention de la variable temps

Les Types de détection Détection spatiale Détection spatio-temporelle Statique Intersection vide Distance inter-objets Intersection des surfaces Mesure des interpénétrations Intersection Discrète Dichotomie Anticipation Retour arrière Continue/ dynamique Intersection 3D des volumes de trajectoire Intersection 4D Calculs analytiques Interpénétration ? Instant du contact ?

Plan Problématique de la détection statique Détection entre primitives Cadre théorique Polyèdres convexes Polyèdres quelconques Surfaces implicites Surfaces paramétriques Autres ? Accélération de la détection Conclusion

Cadre théorique Différence de Minkowski La différence de 2 objets convexes est convexe A A d B B d A-B d A-B d

Détection entre polyèdres convexes Non-intersection par plan séparateur Construction itérative spécifique [Chung et al. 96] Recherche itérative par calcul de points supports [Bergen 99] Utilisation de la cohérence temporelle Calcul de distance de séparation GJK [Gilbert et al. 88] Voronoï Marching [Lin et Canny 91] Hiérarchie décroissante (au sens de l'inclusion) de polyèdres [Dobkin et Kirkpatrick 90]

Comparaison des algorithmes de distance A-B A w0 w2 w1 B w3 w4 Voronoï Marching LC GJK O DK + Utilisation de la cohérence temporelle [Cameron 97, Van den Bergen 98] [Lin Canny 92] [Guibas et al. 99]

Détection entre polyèdres convexes Calcul d'interpénétration Modifications du GJK [Cameron 97] : calcul approximatif [Joukhadar et al. 99] : calcul itératif [Bergen 01] : prolongement du GJK DEEP [Kim et al. 02] Utilisation des cartes de normales (espace de Gauss) pour détecter les facettes intervenant dans le calcul Calcul de l'intersection Utilisation des BSP [Naylor et al. 90]

Détection entre polyèdres quelconques Décomposition en parties convexes et utilisation des algorithmes précédents  Insatisfaisant Non intersection par plan séparateur Calculé par optimisation : Programmation linéaire [Seidel 90] Recuit simulé [Zachmann 01] Utilisation de la cohérence temporelle Calcul de distance Utilisation de hiérarchie de volumes simples Sphères [Quinlan 94, Johnson et Cohen 98] Enveloppes convexes [Ehmann et Lin 01]

Détection entre polyèdres quelconques Calcul des parties en intersection Calcul d'interpénétration Utilisation de DEEP sur une hiérarchie de volumes convexes [Kim et al. 02] Calcul aux sommets et entre arêtes et faces [Boyse 79, Moore et al. 88] Test entre facettes de [Möler 97]

Détection entre surfaces implicite Utilisation de la fonction dedans dehors Détection de non-intersection Trouver un point de potentiel positif pour les deux objets Méthode de [Savchenko 95]: Calcul d'interpénétration Carte de distance [Fisher et al. 02] Calcul de distance Trouver A, B, l et m tels que [Lin et Manocha 95] : B G A F

Détection entre surfaces paramétriques Intersection Approximation par des volumes englobants (hiérarchie) et approximation de la surface par des triangles [Von Herzen et al. 90] Calcul de distance Trouver s0, t0, u0, v0, l et m [Lin et Manocha 95] : Utilisation des domaines convexes GJK [Turnbull et Cameron 97] Hiérarchie de volumes [Johnson et Cohen 98]

Plan Problématique de la détection statique Détection entre primitives Accélération de la détection Problématique Détection de proximité Détection approximative Conclusion

Problématique de l'accélération Deux goulets d'étranglement Détection entre deux objets Détection entre les objets But de l'accélération : Trouver les objets en forte probabilité de collisions  Détection des non-collisions sûres Organisation en pipeline : Couples d'objets Zone de Collisions Recherche de proximité Détection approximative Détection exacte Objets (broad-phase) (narrow-phase)

La détection de proximité Les stratégies (1) Division spatiale Sélectionner les objets dans une même zone Indépendamment des objets : voxels [Turk 89] octrees [Bandi et al. 95] [Thatcher 00] k-d trees [Held et al. 95] En fonction de l'environnement : BSP [Carmack 95] maillage tétraédrique conforme [Held et al. 95] Idéal pour les environnements statiques

La détection de proximité Les stratégies (2) Classement topologique : sweep and prune [Cohen et al. 95] Critères cinématiques Éliminer les objets qui s'éloignent [Vanecek 94] [Redon 02] Prédire l'instant des collisions [Culley et al. 86] [Lin et Canny 92] [Dworkin 94] [Kim et al. 98] 6 couples sur 45 sont retenus mais seuls 4 sont en collisions

Détection approximative Volumes d'approximation Utilisation de volumes d'approximation : R1 O1 R2 O2 Sphères dist(O1,O2)²>(R1+R2)² Pmin2 Pmax2 Pmax1 Pmin1 AABB k-DOP A B a1A1 a2A2 b1B1 b2B2 T L OBB Choix parmi 15 directions différentes

Détection approximative Volumes d'approximation Volumes pour les fortes proximités : QuOSPO [He et al. 99] Rectangle swept-spheres [Larsen et al. 00] Spherical shells [Krishnan et al. 98] : Enveloppes convexes [Ehmann et al. 01] Volumes englobants = détection de non collisions Volumes englobés = détection de collisions sûres Organisation en hiérarchie de volumes (BVH)

Détection approximative Hiérarchies de volumes Exemples de hiérarchies : Arbres de sphères [Hubbard 96][Tzafestas et al. 96] [Palmer et al. 95][Quinlan 94][Redon et al. 01] Arbres d’AAB [Hahn 88] [von Bergen 1997] [Larsson et al. 01], R-Tree [Held et al. 95], BoxTree [Barequet et al. 96] k-Dop [Klosowski et al. 98] [Zachmann 98] Box-Tree [Zachmann 95] Subdivision en boîtes [Alonso et al. 94] OBB-Tree [Gottshalk et al. 96] QuOSPO [He 99] Spherical-shells [Krishnan et al. 98]

Détection approximative Hiérarchies de volumes Fonctionnement général : Nombre de fils : 2 à 8 Si test de collision entre les volumes positif alors on inspecte les volumes des étages inférieurs A la fin : test entre facettes Constructions bottom-up ou up-bottom Comment répartir les primitives dans les volumes : Cohérence géométrique ou topologique ? Optimisations Détection adaptative [Hubbard 96] [O'Sullivan et al. 02] Cohérence Temporelle : test des niveaux du pas précédent Generalized front tracking [Ehmann et al. 01]

Détection approximative Le matériel graphique (1) Architecture générale : Niveau triangle Utilisation du mode "feedback" Le cône de visée est un volume d'approximation [Lombardo et al. 99] Triangles "visibles" Données Pixel Objets Phase de préparation Conversion en pixels Buffers Niveau pixel Niveau triangle

Détection approximative Le matériel graphique (2) Niveau pixel : méthode basée image Combinaison du Z-buffer et d'un autre buffer pour identifier les objets Mémoire de trame [Zachmann 94], Stencil buffer [Baciu et al. 99] Construction de la différence de Minkowski [Kim et al. 02] La distance à l'origine est calculée dans le Z-buffer. Problèmes Résolution de l'image (espace discret) Relecture lente des buffers Obligation d'inspecter tous les pixels de l'image par le CPU Exception : utilisation de l'occlusion_query (extension HP ou NV) [Govindaraju, Redon et al. 03]

Exemple de pipelines V-Collide [Lin et al. 96] Sweep and prune Couples d'objets proches  Distance entre les enveloppes convexes (Voronoï Marching) Couples d'objets en collisions OBB-Tree Couples de primitives Intersection entre triangles Q-Collide [Chung et. al. 96] Partionnement de l'espace en voxels  Dans chaque voxel, sweep and prune Couples de polyèdres proches Recherche d'un plan séparateur entre polyèdres Détection fine (GJK)

Conclusion (1) Efficacité Broad-phase n'est rentable qu'à partir de 100 objets [Zachmann 01] Tests entre hiérarchies de volumes englobants coûteux si de nombreux couples sont à tester Les algorithmes les plus efficaces sont cantonnés aux polyèdres convexes La décomposition des objets en parties convexes ne résout pas le calcul de l'interpénétration

Conclusion (2) Comparaison difficile Forte dépendance avec l'application Problèmes de stabilité des méthodes Corps déformables ?