физический движок не ставит объекты спать в зависимости от времени. Он только заставляет тела спать, которые находятся в состоянии покоя (без дела). Как правило, физический движок определяет правила, когда безопасно сбрасывать тело, обычно это происходит, когда тело вообще перестало двигаться, когда нет других движущихся тел, которые касаются его, и когда оба условия выполняются в течение определенного периода времени.
В Box2D вы не можете изменить поведение, если только не модифицируете исходный код Box2D (не рекомендуется). В «Бурундук» вы можете, по крайней мере, установить порог того, как долго тело должно простаивать до того, как оно будет усыновлено. Изменение этого значения иногда может привести к тому, что медленно движущиеся объекты внезапно упадут в спящий режим.
Чтобы реализовать поведение, которое вы хотите, вы должны определить свой собственный набор правил. Итерации по всем телам, которые могут двигаться медленно в конце игры. Получите значения для углового вращения и скорости и проверьте, упали ли они ниже определенного порога, который чувствует себя хорошо для вашей игры. Затем завершите игру, или вы также можете вручную поместить объект в режим сна с помощью body-> SetAwake (false).