This project is a student project at the School of Design or a research project at the School of Design. This project is not commercial and serves educational purposes

Сравнение Pyro и Axiom на примере одинаковой сцены из ВКР

big
Original size 1920x940

Автор визуального исследования сделал сцену с симуляцией разрушения и предлагает на ее примере разобрать создание дыма от разлетающихся осколков и взрыв.

Вы можете скачать эту сцену по ссылке и найти проект, под названием «scene», в котором находятся все необходимые кэши.

0

Для загрузки кэшированных данных симуляции необходимо обратиться к узлу «file cache», активировать опцию «load from disk» и настроить параметр «constructed» на значение «explicit». После этого следует определить файлы, которые будут загружены в проект.

Кэширование симуляции представляет собой процесс сохранения различных видов данных, таких как анимация, симуляция частиц, трансформация камер и прочие элементы. Этот подход не только способствует оптимизации рабочего процесса, но также значительно упрощает обмен определенными данными между коллегами, обеспечивая их удобную передачу.

Create Emitter

0

Следующим шагом для реализации симуляции взрыва является создание эмиттера с использованием ноды «pyro burst source». По своей функциональности данная нода схожа с pyro source, рассмотренной в предыдущих этапах, однако «pyro burst source» обеспечивает более точное моделирование взрывного процесса с использованием частиц. Её преимуществом является широкая возможность настройки параметров, что позволяет адаптировать модель под конкретные условия. Именно по этой причине данный метод часто выбирают специалисты в области симуляции.

Генерация точек источника начинается с координаты нуля. Чтобы упростить процесс настройки симуляции, рекомендуется переместить сцену с разрушением башни в область, где создаётся взрыв. Это можно выполнить с помощью использования элемента null в контексте obj. Такой подход способствует повышению удобства работы и минимизации возможных проблем с параметризацией на последующих этапах.

0

В разделе «burst components» можно создать требуемые атрибуты, именно поэтому автор визуального исследования добавил атрибут «divergence», чтобы сделать взрыв более управляемым. Позже были скорректированы такие параметры, как направление взрыва и стартовое время создания частиц. Подробный разбор этой ноды не обязателен, так как ее настройка сильно зависит от поставленной задачи, а параметры интуитивны и легко понимаются.

Original size 1920x1080

После создания общего эффекта разлетающихся частиц необходимо перейти во вкладку «quick setups» и выбрать «pyro simulation». Это действие автоматически создаст готовую настройку для симуляции, параметры которой можно редактировать.

Pyro explosion

0

Для того, чтобы сделать кэш взрыва, необходимо вытащить ноду «pyro post process», которая конвертирует дым в VDB, для того, чтобы на рендере программа смогла увидеть поля, созданные при симуляции и корректно зашейдить.

«File cache» отвечает за процесс сохранения информации, можно выставить необходимые кадры, назвать, а так же указать в какую папку необходимо экспортировать секвенцию.

По умолчанию можно зайти в «geo», где хранится проект и найти папку с необходимым неймингом, именно в ней и будут храниться файлы кэша.

0

В процессе моделирования взрыва применялась коллизия, которая играла ключевую роль в создании правдоподобной симуляции. Для корректного переноса эффектов разрушения необходимо в контейнере геометрии создать узел «null», а затем использовать его в узле «object merge». Параметр «transform» следует установить в положение «into this object». Это обеспечивает сохранение трансформационных свойств геометрии и её корректное отображение в пространстве.

Для узла, отвечающего за растеризацию атрибутов, полезно применять функцию «velocity blur». Данная функция позволяет создавать эффект размытия поля скорости. Настройка параметра «shutter offset» с отрицательным значением предоставляет возможность добиться эффекта, при котором разлетающиеся фрагменты генерируют дымовые шлейфы.

Чтобы корректно перенести геометрическую плоскость, необходимо воспользоваться тем же методом: скопировать путь через узел «null» и экспортировать его в «object merge». Узел «extrude volume» играет важную роль в добавлении объёма, вытягивая плоскость вниз и тем самым создавая пространство для заполнения объёма вместе с добавлением атрибута «v». Эти шаги повторяют методику, описанную ранее при рассмотрении симуляции системы «Pyro».

Original size 1920x1060

При регулировке параметров была создана анимация силы значений таких параметров, как «gravity direction» и «gravity scale» для того, чтобы дым после взрыва поднимался наверх быстрее.

0

Кэширование взрыва для 150 кадров составило ~ 1 час.

Среди основных недостатков можно выделить затруднения в контроле общего визуального восприятия дыма и огня, вызванные длительным процессом симуляции. Это значительно усложняет процесс работы. Несмотря на установление параметров «dissipation» и «cooling rate» на минимальные значения, взрыв все равно быстро прекратил своё распространение, что повлияло на конечный результат.

Особое достоинство заключается в том, что турбулентность дыма реалистично взаимодействует с разрушенным зданием, создавая впечатление его поглощения.

Debris Pyro

Debris представляет собой симуляцию дыма, возникающего при падении обломков вследствие разрушения. Для достижения этого автор визуального исследования выделил ключевые точки и провел симуляцию частиц, обозначенных как «debris_pts».

0

Чтобы подготовить точки для Pyro, нужно создать атрибут «v» с помощью ноды «trails». Трансформации в контексте «obj» были удалены, поскольку точки от осколков уже закэшированы в правильном положении и не требуют дополнительной трансформации.

0

Через инструмент «Pyro Source» становится возможным инициализировать основные атрибуты, необходимые для корректного выполнения симуляции дыма, а также последующей растеризации требуемых полей.

Не менее значимым этапом является предварительная обработка данных. Автор визуального исследования провел очистку точек от излишних значений, применив инструмент «Attribute Delete» и активировав функцию «Delete Non-Selected», оставляя при этом только атрибут скорости. Этот шаг играет ключевую роль в оптимизации рабочего процесса.

0

Чтобы добавить необходимую геометрию для коллизии, нужно создать ноду «null», скопировать её путь с помощью комбинации клавиш Ctrl + C и вставить его в ноду «object merge», в которой находится симуляция pyro. Автор применил «extrude volume» к плоскости для заполнения внутреннего пространства и выполнения необходимых операций по созданию sdf для коллизии.

Следует подчеркнуть, что в данном случае разрушение здания не было включено в симуляцию, поскольку это негативно влияло на её общее восприятие.

Original size 1920x1080

Прежде чем приступить к симуляции, необходимо устранить точки, которые остаются в статическом состоянии, не проявляя движения. Для реализации данного шага требуется после ноды «trail» добавить узел «attribute wrangle» и ввести следующий программный код.

Original size 2000x1000

Если нажать на значок справа со знаком «+», то появится ползунок со значением, который участвует в условии кода: «если атрибут скорости меньше „значения“, то — удалить точки».

Original size 1920x1080

Для кэширования необходимо проделать все те же операции, что и при взрыве.

Original size 1920x1052
0

Кэширование пыли для 150 кадров составило ~ 20 минут.

В этом случае управлять симуляцией оказалось гораздо проще, поскольку она не была слишком сложной, а параметры рассеивания сработали именно так, как требовалось.

Axiom explosion

0

Для переноса эмиттера, использованного в Pyro, требуется скопировать «pyro burst source» и растеризированные атрибуты, создать контейнер геометрии и выполнить переименование под параметры Axiom.

Original size 1920x1080

После выполненных операций создаётся узел «axiom solver» с вводом параметров, использованных в предыдущей симуляции.

Original size 1920x1080

В Axiom использована та же коллизия, что и в Pyro, однако она была создана с использованием узла «vdb from polygons» и переименована. Для повышения эффективности рабочий процесс был оптимизирован путем предварительного кэширования.

Original size 1700x850
0

При настройке параметров, аналогичных Pyro, становится очевидно, что результат существенно отличается. Вероятно, факторы «disturbance» и «gravity» оказывают значительно большее влияние, из-за чего Axiom можно считать физически некорректным. Тем не менее, автор визуального исследования слегка изменил параметры, ориентируясь на референс.

Original size 1920x968

Во время настройки была добавлена анимация для силы «gravity», чтобы сделать падение взрыва более эффектным.

Настройки «pyro bake volume» такие же, что и в изначальных параметрах.

0

Кэширование взрыва для 150 кадров составило ~ 2 минуты.

Настройка параметров выполнялась значительно проще, поскольку скорость симуляции была почти в 100 раз выше по сравнению с использованием Pyro.

Axiom debris

0

Для того, чтобы создать симуляцию пыли необходимо проделать все те же самые операции, однако в данном случае необходимо переименовать только атрибут скорости — «v».

Original size 1920x1080

После вышеперечисленного, нужно создать ноду «axiom solver» и ввести параметры, которые были введены в Debris Pyro.

Original size 1920x1080

Для коллизии были выполнены те же самые операции, что и в случае взрыва, однако обработке подвергалась исключительно поверхность.

Original size 1920x992
0

Подобно ситуации с взрывом, исходные параметры, применённые в Pyro, в этом случае проявились по-другому. Пыль едва заметна и работает некорректно. Тем не менее, автор визуального исследования слегка изменил параметры, ориентируясь на референс. Настройки «pyro bake volume» идентичны изначальным параметрам.

Original size 1920x912
0

Кэширование пыли для 150 кадров составило ~ 2 минуты.

Настройка прошла без сложностей, однако стоит подчеркнуть, что в Pyro сгустки дыма, образующиеся от разрушающихся объектов, удалось воспроизвести более реалистично по сравнению с Axiom.

Сравнение симуляций на флипбуке

Original size 2000x523

PYRO || AXIOM

0

PYRO || AXIOM

Подводя итоги данного блока, следует отметить, что симуляция в Axiom оказалась более эстетичной и выразительной благодаря особенностям работы сил. Коллизия здесь заметно сильнее и эффективнее захватывает за собой дым, чем в Pyro. Быстрая загрузка симуляции значительно упростила процесс корректировки параметров. Однако стоит упомянуть, что реализация гравитации проявляет себя некорректно, отчего впечатление от взрыва менее реалистичное. Кроме того, добиться такого же изящного воспроизведения debris, как в Pyro, не удалось.

Что касается симуляции в Pyro, то длительное время загрузки усложняло процесс работы, из-за чего некоторые параметры не были реализованы так, как первоначально планировалось. Хотя показатели рассеивания и охлаждения воздуха достаточно низкие, дым от симуляции испарился слишком быстро, что негативно сказалось в итоге. В то же время debris вышел намного более проработанным и эффектным, чем в Axiom, поскольку коллизия в этом солвере лучше справилась с отображением структур дымовых облаков.

Автор визуального анализа предлагает перейти к следующему разделу, чтобы ознакомиться с процессом подготовки и переноса работы на «stage» для применения шейдера и последующего выполнения рендеринга.

Bibliography
1.

«Houdini» //Side FX URL: https://www.sidefx.com/docs/houdini/basics/index.html (дата обращения: 07.11.2025)

2.

«Справка по HOUDINI. Инструментарий процедурной анимации и не только» //Houdini help URL: https://houdinihelp.ru/ (дата обращения: 15.11.2025)

Image sources
Show
1.

«Фото По Запросу Большой взрыв 4k» // FREEPIK URL: https://ru.freepik.com/photos/%D0%B1%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B9-%D0%B2%D0%B7%D1%80%D1%8B%D0%B2-4k?log-in=google#uuid=041bc370-8de2-475a-9aac-f4f27bcd3e91 (дата обращения: 01.12.2025)

2.

«Как делаются киновзрывы» // LIVEJOURNAL URL: https://kak-eto-sdelano.livejournal.com/44653.html (дата обращения: 12.11.2025)

3.

«„Начинка“: Как снимались легендарные сцены „Правдивой лжи“, „Дня независимости“ и „Пятого элемента“» // FilmPro URL: https://www.filmpro.ru/materials/29670 (дата обращения: 12.11.2025)

4.

«Maze Runner: The Death Cure VFX | Breakdown — Compositing | Weta Digital» // Youtube URL: https://youtu.be/ac8Y8PIonwU?si=mYdxWpi1Tfg0946m (дата обращения: 12.11.2025)

5.

«Росомаха: Бессмертный | The Wolverine (2013)» // RUTUBE URL: https://rutube.ru/video/4bcd125a4a7e89e528561e54ee1ef0fe/?r=wd (дата обращения: 10.11.2025)

6.

«Вид на гриб апокалиптического взрыва ядерной бомбы» // FREEPIK URL: https://ru.freepik.com/free-ai-image/view-apocalyptic-nuclear-bomb-explosion-mushroom_67216578.htm#fromView=keyword& page=1& position=10& uuid=a15752a3-2655-46f4-88d5-5325aec9c2c1& query=%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B9+%D0%B2%D0%B7%D1%80%D1%8B%D0%B2+4k (дата обращения: 10.11.2025)

Chapter:
3
4
5
6
7