У мене є простий двигун фізики, який вирішує зіткнення, просто виправляючи положення тіл, що перекриваються (на даний момент просто кола), на відміну від простої зміни швидкості або застосування імпульсу. Швидкість змінюється лише після того, як впливи вже вирішені або під час інтеграції.
У мене виникла проблема, що на купи об’єктів верхні об’єкти чинять занадто великий тиск (це неявно, в алгоритмі немає моделювання тиску) на об’єкти в нижній частині кути, внаслідок чого їх проштовхують через підлоги, тощо.
Я хотів виправити це шляхом сортування об'єктів за їх y-координатою, тож зіткнення вирішуються знизу вгору. Але тепер, двигун демонструє дивну поведінку, що вискакує для об'єктів, які насправді повинні знаходитись у спокої (див. Gif)
Не даючи вам лише вихідний код - що це може бути?