Rigid Body в Blender даёт естественное движение почти бесплатно: расставили объекты, нажали расчёт, получили падение и рассыпание, которое руками анимировать часами. Проблемы начинаются, когда объекты дрожат на месте, проваливаются друг сквозь друга или разлетаются в бесконечность.
Пройдём по тому, откуда берутся эти три беды, как настроить столкновения и чем они отличаются от коллизий в движке, что делать с весом и трением и как зафиксировать результат. На той же физике держится разрушение объекта, только участников там сразу сотни.

Два типа участников
База, без которой ничего не работает.
Активные объекты: те, которые двигаются под действием физики. Они падают, сталкиваются, катятся.
Пассивные: те, которые участвуют в столкновениях, но сами не двигаются. Пол, стены, препятствия.
Частая ошибка новичка: забыть назначить пол пассивным телом. Объекты проваливаются сквозь него, потому что для расчёта его просто нет.
Пассивный объект может быть анимирован вручную: тогда он двигается по ключам и толкает активные. Так делают всё, что должно управляться, но участвовать в физике.
Форма столкновения
Главный параметр, определяющий и точность, и скорость.
Расчёт идёт не по видимой геометрии, а по упрощённой форме, которую вы выбираете.
Варианты по возрастанию стоимости. Коробка и сфера: почти бесплатно. Капсула и цилиндр: дёшево. Выпуклая оболочка: умеренно. Точная форма по мешу: дорого.
Ключевое ограничение: выпуклая оболочка не имеет вогнутостей. Чаша, посчитанная так, будет вести себя как сплошной купол: в неё ничего не положишь.
Точная форма решает это, но работает надёжно только для пассивных объектов. Для активных она даёт нестабильность.
Практика для вогнутых активных объектов: разбить на несколько выпуклых частей и связать их.
Почему объекты дрожат
Первая из трёх типовых бед.
Объект лежит на полу и мелко трясётся, хотя должен спокойно стоять.
Причина: расчёт идёт шагами, и на каждом шаге система обнаруживает небольшое проникновение, выталкивает объект, он падает обратно, и цикл повторяется.
Что помогает. Увеличить число шагов расчёта: проникновение становится меньше. Настроить порог засыпания: объект с малой скоростью перестаёт считаться. Увеличить запас столкновения, чтобы контакт определялся чуть раньше касания.
Последнее решает большинство случаев, но имеет побочный эффект: объекты начинают зависать в миллиметрах над поверхностью.
Почему проваливаются
Вторая беда, с обратной причиной.
Быстро летящий объект за один шаг расчёта перескакивает препятствие: в начале шага он перед стеной, в конце за ней. Столкновения не было.
Что помогает. Увеличить число шагов: каждый становится короче. Включить непрерывное обнаружение столкновений, если оно доступно: система проверяет путь, а не только конечные точки. Сделать тонкие препятствия толще.
Последний пункт самый действенный: тонкая стена это главная причина провалов. Плоскость нулевой толщины пропускает почти всё.
Практическое правило: препятствие должно быть толще, чем путь объекта за один шаг.
Почему разлетаются
Третья беда, самая эффектная.
Объекты внезапно улетают в бесконечность с огромной скоростью.
Причина обычно в начальном состоянии: объекты пересекаются друг с другом в первом кадре. Система пытается их развести и придаёт колоссальное ускорение.
Решение простое: перед расчётом убедиться, что ничего не пересекается. Малейший зазор между объектами в стартовой позиции снимает проблему.
Вторая причина: слишком большой шаг при высоких скоростях. Та же ситуация, что с провалами, только с обратным знаком.
Третья: неверный масштаб сцены. Объект размером в километр падает медленно и странно, размером в миллиметр дёргается.
Масса и её влияние
Параметр, который понимают неверно чаще всего.
Масса не влияет на скорость падения: тяжёлое и лёгкое падают одинаково.
На что она влияет: на результат столкновения. Тяжёлый объект оттолкнёт лёгкий и почти не изменит своё движение.
Практическое следствие: если шар сбивает кегли неубедительно, дело в соотношении масс, а не в скорости.
Полезная возможность: масса может считаться автоматически по объёму и заданной плотности. Тогда деревянный ящик и стальной куб одного размера получают правильное соотношение сами.

Трение и упругость
Два параметра, задающие характер поведения.
Трение определяет, скользит объект или цепляется. Низкое даёт лёд, высокое резину.
Важно: трение учитывается для обеих поверхностей контакта. Скользкий объект на шершавом полу поведёт себя иначе, чем оба скользких.
Упругость определяет отскок. Ноль означает, что объект падает и остаётся лежать, высокое значение даёт мяч.
Типичная ошибка: высокая упругость на всех объектах. Сцена превращается в прыгающую кашу.
Практический ориентир: большинство реальных предметов почти не отскакивают. Упругость нужна мячам и пружинам, а не ящикам.
Затухание
Параметр, который спасает от вечного движения.
Объекты в расчёте не теряют энергию сами: без затухания предмет катится бесконечно.
Отдельно задаётся затухание поступательного движения и вращения.
Второе особенно важно: катящийся цилиндр без затухания вращения крутится вечно, что выглядит неверно.
Практическое применение: небольшое затухание на всех объектах делает сцену спокойнее и предсказуемее.
Начальная скорость
Способ задать движение, а не только падение.
Объекту можно задать стартовую скорость и вращение до начала расчёта.
Как это делается: либо параметром, либо анимацией до момента включения физики. Как править полученные кривые, разобрано в материале про Graph Editor.
Второй способ гибче: объект летит по ключам, в нужный кадр физика включается, и дальше он живёт сам.
Это основной приём для бросков, ударов и всего, что начинается с управляемого движения и продолжается свободным.
Связи между объектами
Следующий уровень после свободного падения.
Объекты можно соединять ограничителями: шарниром, петлёй, пружиной, жёстким креплением.
Что этим делают: цепи, качели, двери, подвески, разваливающиеся конструкции.
Отдельный приём: жёсткое крепление, которое разрушается при превышении силы. Так делают конструкции, рассыпающиеся от удара.
Практическая тонкость: длинные цепочки связанных объектов нестабильны. Каждое звено вносит погрешность, и цепь начинает дрожать или растягиваться.
Помогает увеличение числа итераций решателя, отвечающих именно за связи.
Фиксация результата
Обязательный этап перед рендером.
Расчёт зависит от порядка вычислений и может отличаться между запусками. При рендере на нескольких машинах результат разъедется.
Решение: запечь симуляцию в кэш. После этого движение становится зафиксированным.
Второй способ: превратить результат в обычные ключи анимации. Тогда физика больше не нужна, и движение можно править вручную.
Третий приём: зафиксировать финальное положение объектов. Полезно, когда нужна не анимация, а естественная раскладка предметов.
Подробности работы с кэшем есть в материале про запекание симуляции.

Комбинация с ручной анимацией
Приём, расширяющий возможности сильно.
Физика и ключи не исключают друг друга. Объект может двигаться по ключам, а в нужный момент переходить под управление расчёта.
Обратное тоже возможно: рассчитанное движение фиксируется, и дальше объект анимируется руками.
Зачем это нужно. Художественный контроль над началом и концом при естественности середины. Возможность поправить неудачный кадр, не пересчитывая всё.
Практическая схема: пассивный анимированный объект толкает активные. Так делают руку, сбивающую предметы, или машину, врезающуюся в ограждение.
Тонкость: анимированный пассивный объект должен двигаться плавно. Резкий скачок по ключам придаёт активным телам огромное ускорение.
Раскладка предметов физикой
Применение, о котором забывают.
Расставить два десятка предметов на столе естественно это работа на полчаса. Физика делает это за секунды.
Схема: поднять объекты над поверхностью, дать упасть, остановить расчёт, зафиксировать положение.
Что получается: естественные наклоны, касания, небольшие пересечения краями. То, что руками воспроизводится долго и всё равно выглядит расставленным.
Приём работает для книг, камней, мусора, посуды, коробок, всего насыпного.
Дальнейшая раскладка по большой площади разбирается в материале про распределение объектов.
План действий
Схема, экономящая пересчёты.
Проверить масштаб сцены: размеры должны быть реальными. Назначить полу и препятствиям пассивное тело. Выбрать форму столкновения по возможности простую. Убедиться, что в стартовом кадре ничего не пересекается. Задать массу через плотность. Поставить небольшое затухание. Посчитать и посмотреть. Если дрожит, поднять число шагов. Если проваливается, увеличить толщину препятствий. Запечь результат.
Четвёртый пункт снимает самую эффектную из проблем и занимает секунды.
Где всё идёт не по плану
Пол не назначен пассивным телом. Всё проваливается.
Объекты пересекаются в первом кадре. Разлетаются с огромной скоростью.
Выпуклая оболочка на вогнутом объекте. Чаша ведёт себя как купол.
Тонкие препятствия. Быстрые объекты проходят насквозь.
Высокая упругость у всего. Сцена прыгает.
Неверный масштаб. Движение выглядит замедленным или ускоренным.
Частые вопросы
Почему объект дрожит на полу?
Система обнаруживает и исправляет микропроникновение каждый шаг. Помогает увеличение числа шагов и настройка порога засыпания.
Как сделать, чтобы в чашу можно было что-то положить?
Точной формой столкновения для пассивного объекта или разбиением на несколько выпуклых частей для активного. Выпуклая оболочка здесь не подходит по определению.
Влияет ли масса на скорость падения?
Нет, как и в реальности. Масса определяет результат столкновений: тяжёлое отталкивает лёгкое.
Почему результат меняется при каждом запуске?
Расчёт зависит от порядка вычислений. Для повторяемости симуляцию надо запечь в кэш.
Можно ли править результат вручную?
После преобразования в ключи анимации да. До этого движение задаётся только параметрами расчёта.
Убедитесь, что в стартовом кадре объекты не пересекаются. Эта проверка занимает секунды и снимает самую эффектную из проблем физики.


