Introduction

Ce projet est un prototype expérimental de physique rigide et souple basé sur WebGPU, centré sur un solveur de style Augmented Vertex Block Descent (AVBD). L'objectif est de mettre en œuvre l'algorithme AVBD dans un environnement web pour la simulation de la physique.

Contexte Technique

Le solveur AVBD est basé sur l'article « Augmented Vertex Block Descent » de Giles et al. (2025). Le projet suit la structure de l'algorithme 1 de l'article, avec les phases larges et étroites, l'état de contact initialisé, la résolution des corps colorés, les mises à jour duales et la reconstruction finale de la vitesse. La détection des collisions est effectuée à partir de l'état actuel, suivie de la génération de candidats pour la phase large et de la génération de manifolds pour la phase étroite.

Le code est structuré autour de plusieurs étapes : la construction de la liste de contraintes par corps, la coloration, l'initialisation de la cible inertielle et de l'état primaire, et les itérations principales de l'algorithme AVBD. Les mises à jour duales et de rigidité sont effectuées après chaque balayage primaire.

Analyse et Implications

L'implémentation de l'algorithme AVBD dans un environnement web présente des défis en termes de performances et de stabilité. Le projet est actuellement limité à Chrome et nécessite des améliorations pour une utilisation plus large. Cependant, il ouvre des perspectives pour la simulation de la physique dans les applications web, notamment dans les domaines du jeu vidéo et de la réalité virtuelle.

Les implications de ce projet sont importantes, car il permet de simuler des scènes physiques complexes dans un navigateur web, sans nécessiter de logiciels spécialisés. Cela pourrait conduire à de nouvelles applications et à de nouveaux usages de la simulation de la physique dans les médias numériques.

Perspective

Les prochaines étapes pour ce projet consisteront à améliorer la stabilité et les performances, ainsi qu'à étendre la compatibilité à d'autres navigateurs. Il sera également important de développer des outils et des interfaces pour faciliter l'utilisation de l'algorithme AVBD dans les applications web. Les limites actuelles du projet, telles que la gestion des conflits de couleur et la mise en œuvre de la double tamponnage, devront être abordées pour garantir une utilisation plus large et plus fiable de la technologie.