Разрушение объекта состоит из двух независимых задач: разбить модель на куски и заставить эти куски вести себя убедительно. Первая решается одним инструментом за минуту, вторая занимает всё остальное время, и именно от неё зависит, поверит зритель или нет.
Дальше способы дробления, настройку физики осколков, работу с пылью и мелочью и приёмы, делающие разрушение достоверным.

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

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

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


