Прежде чем производить симуляции, нужно создать исходную геометрию, которую мы позже скормим в систему частиц tyflow. Болванку создал в GrowFX. Из чего она состоит:
-Ягоды, слегка отличающихся размером и формой. Созданы из бокса и пары модификаторов.
-Ветки, тут все примитивно, палка на палке, с небольшим шумом, только я немного отступил от "живого" референса, удлинив последний слой палок, дабы ягодки немного раздвинулись в пространстве и могли свободнее двигаться. Меш с минимально-оптимальным для скиннинга количеством полигонов. Удобство GrowFX в данном примере в том, что он позволяет вытянуть из себя не только геометрию, но и сплайны веток.
-Джоинты, для корректного присоединения ягод к веткам в tyflow. Это просто маленькие лоуполи сферы. Генерируются у основания ягод.
Далее объекты из GrowFX нужно загнать в tyflow. В общем и целом сетап выглядит так:
Теперь немного подробнее о каждой ноде.
"branches" рождает с заданной дистанцией физические сферы на ветках. Шаг подобран так, чтобы минимизировать проникновение тарелки сквозь ветку.
Затем эти сферы склеиваются между собой с помощью PhysX Bind, радиус склеивания меньше радиуса сфер, двух связей на каждую сферу достаточно.
"berry" рождается из единого меша с ягодами, за счет включенной опции "Object elements" каждая ягодка получается отдельным физическим объектом.
"joints" практически повторяет предыдущую, с разницей только в номере группы. У каждой ноды своя группа симуляции от 1 до 3. Также у всех групп общие PhysX Swith в режиме kinematc и Send Out на первом кадре. Сделан такой финт для того, чтобы ветку не деформировало физикой на нулевом кадре, это будет важно на этапе скиннинга ветки, до этого самого скинниннга объект выглядит так:
После отправки всех шейпов в главную ноду симуляции, происходит активация "физичности" и еще одно склеивание, только уже локально между основанием ягоды и кончиком ветки. Тут и пригодилось разбиение шейпов по группам.
А дальше небольшой тюнинг настроек самого PhysX, повышены все Substeps раза в 2, активирована опция CCD, для увеличения точности симуляции и уменьшения конвульсий. А еще добавлены ключи анимации на параметр гравитации. В начале гравитация = 0, чтобы ветка успела немного расправится в воздухе, потом гравитация плавно возрастает до базового значения. Осталось только нажать кнопку Play Animation:
Итак, ветка лежит, но это месиво из шариков малопригодно для рендера. Придется восстанавливать геометрию, вспоминаем, что из GrowFX были утянуты не только сплайны, но и меш.
С помощью модификатора tyParticleSkin мы натягиваем этот меш на PhysX шарики, опять же разделение на группы позволяет игнорировать остальные детали из симуляции. Эти детали мы лучше вытащим с помощью tymesher.
В общем-то с формой на этом этапе всё, можно конечно почистить видимые коллизии, а они есть, т.к. для упрощения симуляции ветка и ягоды не взаимодействуют друг с другом. Но какая же это процедурность, если руками что-то ковырять)) Лучше потратить время на создание материала.
Материал также процедурный, не используется готовых растровых текстур. По сути он состоит из стандартного VrayMaterial с прозрачностью в режиме Hard (wax) и ЧБ маски, состоящей из шумов. Эта маска через Mix в разной степени влияет на диффузный цвет, отражающую способность и глянцевость, матовость в прозрачности. На отдельном крупном рендере маски можно разглядеть, что в шум впихнуты два шума помельче. На темных областях основного шума- это светлые частые пятна, на светлом- это редкие темные пятна.
В материале исходная маска в режиме Instance разведена по различным картам Mix, в них маска не используется напрямую, везде свое подрезание по светлым и темным участкам. Параметров там немало, так что конкретные цифры при желании можно изучить в готовой модели . Также для цветового разнообразия в слоте Fog Color применяется крупный шум с редкими включениями цвета, слегка отличного от основного. И как /вишенка на торте/ капелька на винограде, поверх основного материала добавил мелкие капельки воды, крупнее не получится в рамках плоского материала. Опять маска, но на этот раз Cellular, она немного затемняет подложку и проявляет блик поверх ягоды (VrayBlendMaterial-additive mode) и дает имитацию объема этому блику.
Ну а материал ветки это просто цветной Gradient ramp и для точек используется карта Cellular поверх в Composite. Noise на бампе.
На этапе рендера активируется сглаживание и квадратная моделька становится уже не такой квадратной.
PS: Эту модель, да и тутор я сделал как ответ на комментарии в VK группе AlexHappy , а получилось как получилось