A WebGPU implementation of Augmented Vertex Block Descent
Ce projet est un prototype expérimental en WebGPU pour la simulation de corps rigides et mous basé sur le solveur AVBD de Giles et al. (2025). L'implémentation actuelle fonctionne principalement dans Chrome et n'est pas encore un module plug-and-play, étant une preuve de concept initiale. La pipeline suit étroitement l'Algorithme 1 de l'article: détection de collisions, phase large via LBVH, phase étroite avec génération de manifolds et persistance d'état pour le warm-starting. Le solveur construit des listes de contraintes par corps, applique un coloriage glouton pour résoudre les corps par couleur, initialise la cible inertielle et l'état primal, puis effectue des résolutions primitives colorées suivies de mises à jour duales et de reconstitution des vitesses. L'implémentation diffère sur certains points (résolution en place pour conflits de même couleur au lieu du double-buffering) et le code contient des modules clés tels que broadPhase, contactGeneration, avbdState et PhysicsEngine, avec des améliorations prévues sur stabilité et performance.