Algoritmo di Featherstone
Un algoritmo che calcola la dinamica di una catena di corpi articolati in tempo lineare, ed è il motivo per cui le braccia di certi ragdoll non si staccano dalle spalle.
Roy Featherstone pubblicò l'Articulated Body Algorithm nel 1983, pensando ai bracci robotici. Il modo ingenuo di risolvere un corpo articolato costruisce e inverte una matrice di massa, con costo O(n³) nel numero di giunti; Featherstone ottiene lo stesso risultato in O(n) percorrendo la catena in andata e ritorno. I corpi sono descritti in coordinate ridotte, cioè angoli dei giunti anziché posizioni libere, per cui i giunti non possono separarsi per costruzione.
La maggior parte dei motori di gioco simula invece i ragdoll come corpi rigidi liberi tenuti insieme da vincoli: economico, ma soggetto a stiramenti sotto carico. Le articolazioni di PhysX e btMultiBody di Bullet si basano su Featherstone proprio per evitarlo.