3D - Simulation de Tissus sur GPU

Encadrants : Fabrice Jaillet (LIRIS-ORIGAMI)
Détails : Le stage se déroulera au sein du laboratoire LIRIS (bâtiment Nautibus).
Possibilité de poursuivre en M2.
Domaine : Informatique graphique, simulation 3D, système de particules, GPU.
Compétences requises : C++, Cuda/OpenCL et un goût pour l'algèbre linéaire et l'analyse numérique. Des notions en mécanique sont bienvenues.

Contact : fabrice.jaillet -at- liris.cnrs.fr

Sujet :

Simulation physique de systèmes de particules sur GPU.
Laboratoires impliqués : LIRIS, équipe ORIGAMI


[Animation de tissu par système masse-ressort]

En Informatique Graphique, les sytèmes de particules sont utilisés pour simuler de nombreux phénomènes naturels tels que feu, explosion, fumée, eau, nuage, poussière, neige, feux d'artifice, et animés à l'aide de forces qui agissent sur celles-ci telles que la gravité, le vent, l'inertie, etc. Pour plus de réalisme, on peut ajouter des collisions avec des obstacles. Mais souvent, il n'y a pas de relations entre ces particules : elles évoluent de manière indépendante, sans se soucier de ce qui se passe autour d'elles. Ce qui peut être gênant, par exemple dans le cas de la neige, si on veut la voir s'accumuler au sol.

Il est aussi possible de lier les particules entre-elles par des relations physiques, par exemple en définissant des forces d'attraction/répulsion comme dans les atomes ou en ajoutant des ressorts entre les masses, pour leur donner une forme. Ainsi, il devient possible de modéliser des objets plus complexes, comme des tissus, voire des objets volumiques, que l'on peut maintenant déformer sous l'action des forces extérieures.

Il s'agira, dans ce stage, d'explorer les algorithmes de simulation des systèmes de particules :

  • Découverte des librairies de simulation 3D, et choix

  • Étude des méthodes existantes de simulation des systèmes de particules sur GPU (un overview est disponible ici : Parallel Iterative Solvers for Real-time Elastic Deformations)

  • Implémentation et comparaison de quelques méthodes

  • Améliorations des algorithmes, par exemple par l'utilisation d'un schéma black-red