IT-lexicon › Programmeren › Constraint solver

Constraint solver

Programmeren Svenska → Bijgewerkt: 2026-10-24

Het onderdeel van een physics-engine dat de regels handhaaft: lichamen dringen niet in elkaar, scharnieren blijven heel en wrijving remt af.

Vrije beweging is eenvoudig, tot lichamen zich aan regels moeten houden: niet overlappen, vast blijven zitten in een scharnier, niet harder glijden dan de wrijving toestaat. De constraint solver brengt dat in elke stap met elkaar in overeenstemming. De dominante methode is sequential impulses, de aanpak van Erin Catto in Box2D (GDC 2006): in plaats van één groot stelsel op te lossen, wordt in een paar iteraties telkens één beperking tegelijk bijgesteld (Gauss–Seidel).

Dat is goedkoop, stabiel en makkelijk deterministisch te maken, ten koste van wat veerkracht bij zware stapelingen. De alternatieven, zoals geprojecteerde Gauss–Seidel op een LCP of positiegebaseerde dynamica, ruilen nauwkeurigheid op andere manieren in voor snelheid.

← Terug naar het lexicon