Сообщество - Blender RU
Добавить пост

Blender RU

1 014 постов 3 493 подписчика

Популярные теги в сообществе:

Перо в Камне

Перо в Камне 3D, 3D моделирование, Blender

Идея была такая - перо писателя точно меч короля Артура застыло в каменной (кристаллической) чернильнице и извлечь его сможет лишь достойный "глаголом жечь сердца людей"! Однако как это часто бывает что-то пошло не так, как думаете почему получилось непохоже?

Показать полностью 1

Как разрушить в Блендере 3D средневековую каменную башню ?

Задача: Разрушить в Блендере 3D средневековую каменную башню частично замедлив ее падение на камеру. На видео https://youtu.be/5plVv_CU-wo (0:33) можно посмотреть результат падения и откуда идет импульс разрушения.

Статья написана для опытных пользователей Blender 3d.

Башня должна сначала качаться (1), затем распадается на связанные фрагменты (2) которые в свою очередь должны развалиться на камни (3). Все сопровождается разлетом мелких камешков, пыли, мусора.

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

3d графику часто используют для разрушения больших объектов, при этом задействуется сразу несколько систем симулирования- физика твердых тел, частицы, флюиды (объем). В Блендере эти системы реализованы через модификаторы Rigid body, ParticleSystem,Fluid. Первая будет отвечать за физику взаимодействия больших камней между собой, вторая за очень мелкие камни и мусор и третья за пыль. Почему для мелких камней тоже не использовать Rigid body? Из-за двух причин -расчет в ParticleSystem намного быстрее чем в Rigid body хоть и менее реалистичный, так же Блендер как то странно может обработать симуляцию предметов меньше 8 см (https://docs.blender.org/manual/en/latest/physics/rigid_body/tips.html).

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

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Делаем стены башни

Создаем небольшой кусок стены из отдельных притертых боксов — делаем границы куска взаимостыкуемыми с небольшим зазором (1). Копипастим кусок формируя фронтальную часть башни (2). Формируем зубья и выступы также из боксов ,немного детализируем бревнами и кантом. Копипастим фронтальную часть стены на оставшиеся стороны (3). Стараемся избегать пересечения камней между собой — всегда оставляем небольшой зазор, иначе камни разлетятся в самом начале симуляции. Добавляем интерьерные детали по вкусу- они будут формировать мусор.

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Заполняем камнями стационарные не разрушаемые части прилежащих к башни стен- можно использовать уже созданный кусок.

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Для группировки систем симуляции создадим несколько коллекций Rigid body, ParticleSystem,Fluid(volume) соответственно:

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Переместим все камни в первую коллекцию.

Анимация раскачивания башни

Поскольку башня будет ломаться не у самой земли, а чуть выше прикинем где будет та часть башни что останется на земле нетронутой и где будет та что совершит падение. В центре стыка этих частей создадим пустышку. Установим ее родителем для всех объектов динамичной (падающей) части башни и стен.

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

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Симуляция твердых тел:

Я понимаю что современного цемента на момент раннего средневековья не было, но разрушение башни через промежуточные сегменты смотрится более эффектно. Поэтому давайте сначала разобьем нашу группу камней на эти сегменты, количество сегментов выберете на свой вкус. Создадим в коллекции phy_rb подколлекции для каждого сегмента, я дополнительно разделил подколлекциями башню, шлюз, стены. Для мелкого мусора я создал подколлекции decor:

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

В дальнейшем для быстрого выделения камней сегментов вы можете использовать критерий группировки по коллекции- это удобно. Также коллекции вида *_phy_eff будем использовать для ограничения использования каких либо эффектов только на одну систему симуляции, а коллекции *_col на ограничения взаимодействия с эффекторами.

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

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

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Подготавливаем объекты симуляцию Rigid body:

Выделяем все объекты статической коллекции, выбираем меню Object — Rigid body — Add passive. На вкладке физика настраиваем параметры статичного объекта:

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Где Type — тип объекта -пассивный объект не изменяет свое положение, но имеет коллизию с другими объектами, Animated — позволяет передавать управление объектом между системной анимации и системой симуляции, Shape — меш используемый для расчета коллизии объекта: Convex Hull -выпуклая оболочки без учета отверстий (быстрый расчет, но менее точный), Mesh — оболочка эквивалентна форме объекта (медленный расчет, но более точная симуляция) Surface Response это группа отвечает за взаимодействие поверхностей — Friction устанавливает силу трения, а Bounciness упругость. (чем больше упругость тем сильнее обратный импульс силы- отскок)

Обращаю ваше внимание на важную настройку коллизии Source — она позволяет указывать при расчете коллизии какую использовать сетку объекта базовую (Base) или модифицированную Final (с применением всего стека модификаторов объекта). Если вы хотите добавить мелких деталей объекту при рендере через модификатор сабдив и дисплейсмент, но при этом расчет его симуляции вести на базовой сетки -то это настройка поможет вам это сделать.

Поскольку у нас есть земля о которую также должны разрушаться сегменты давайте создадим ее. Проще всего создать над имеющейся высокополигональной земле сетку с небольшим разрешением (40х40) и модификатором ShrinkWarp спроецировать ее на имеющеюся землю. Добавить сетке Rigid Body - passive с Shape - Mesh и переместить ее в пассивную коллекцию.

Выделяем все камни всех коллекции сегментов кроме статичной, выбираем меню Object — Rigid body — Add Active. На вкладке физика настраиваем параметры активного объекта:

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

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

Рассчитаем массу каждого камня исходя из его объема и плотности. Object — Rigid body — Calculate Mass, выбираем Stone

Для сцепления камней внутри сегмента будем использовать Rigid Body constrain. Выделим в первом сегменте все камни. В меню выбираем Object — Rigid body — Connect, через некоторое время (может тормозить) появятся пустышки связей:

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Эти пустышки наш «цемент» и тем он прочнее чем больше значение в Threshold- порога величины силы импульса для разрыва связи. Тип Fixed указывает что соединяемые между собой объекты закреплены жестко без возможности смещений. Отмечу что по умолчанию коллизия между камнями в рамках связи лучше отключить Disable Collisions так будет проще контролировать развал сегмента. Создадим подколлекцию в коллекции сегмента и переместим туда все полученные пустышки. Повторяем для всех сегментов.

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

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Линкуем эту анимацию выбранного камня всем камням в коллекции. Повторяем для всех сегментов. Время включения для каждого сегмента лучше смещать немного на 5-10 фреймов, самыми первыми включающими симуляцию лучше выбрать нижние сегменты.

Если происходит сильное ударение сегмента с землей или с другим сегментом он должен рассыпаться на камни за счет разрыва связей, но если это не происходит или происходит сильно быстро- то откорректируйте значение Threshold связи.

Настраиваем симуляцию Rigid Body:

Заходим в глобальные настройки симуляции твердотельных объектов:

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Устанавливаем скорость симуляции по своему вкусу — для массивных объектов лучше использовать меньшие значения Speed от 0.6-0.4.

Указываем количество расчета шагов симуляции на один кадр Substep per frame- в теории чем больше это значение тем более качественно и медленнее будет просчитываться симуляция. На практике я редко использовал больше 2-5. Можно оставить как по умолчанию 10, но сильно разницы в расчете я не увидел, а вот скорость расчета упала.

Рекомендую для сепарации ( ЧТО ЭТО ЗА СЛОВО?!!! Правильно скОжите, русский человек? Хорошо — «разделение».) взаимодействия эффектов между различными системами симуляции обязательно создавайте отдельные коллекции эффектов для каждого типа симуляции, иначе турбулентность при расчете пыли может мешать например расчету полета мусора в другой системе. Для этого создадим подколлецию phy_rb_eff коллекции phy_rb и поместим в новую коллекцию эффекты , можно например с помощью эффекта ветра изменить вектор падения камней, или задать больше угловой скорости и тд. Укажем в поле Effector Collection ограничивающем коллекцию эффектов нашу коллекцию phy_rb_eff.

Устанавливаем в поле Cache фреймы начала и конца анимации, начало анимации выставите равным фрейму самой первой анимации включения симуляции камней, чтоб оптимизировать время расчета.

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

На камни которые будут ближе всего в камере назначите модификатор подразделения и несколько модификаторов деформации. На скорость симуляции это не повлияет как я уже отмечал выше, однако скорость проигрывания анимации уменьшится(можно отключить применение модификаторов для вьюпорта).

Как разрушить в Блендере 3D средневековую каменную башню ? Blender, 3D, Инди игра, Видео, YouTube, Длиннопост

Если интересно то буду писать дальше о создании пыли, мусоре, ткани. Хватит на 3 части)

Показать полностью 15

Skull Kid (Blender)

Пытался освоить блендер.

Показать полностью 2

Песня весны

Всем доброго дня!

Как-то на ютубе я наткнулся на старый советский мультфильм про Крайний Север, где боролись с зимой-старухой, которая всё замораживала. В конце там была прикольная песенка с припевом "Уходи, зима седая, злюка-злющая! Нас метель теперь твоя не заметёт..."

Когда в этом году на 9-ое мая выпал снег, я решил сделать в Блендере небольшую 3д анимацию под эту песню. В качестве персонажей я выбрал дигимонов (это как покемоны, только виртуальные, из многочисленных игр и аниме-сериалов брэнда "Digimon"). Хотелось успеть уложиться в 2-3 недели, до конца весны. Пара дигимонов (щенок и птичка) у меня уже были нарисованы в прошлом году для другого ролика. Так что осталось создать модели ещё двух (кошки и феникса), сделать пейзажи и анимацию. Ушло примерно часов 40 на всю работу

Изначально я планировал больше шуток, например, на фразе "Нам теперь светло, тепло, и не мерзнут больше ушки!" щенок должен был сидеть в озере лавы, а не в воде. Или под строчку "Дятел клювом застучал..." птица должна была клевать щенка за то, что он сбросил её с дерева. Так же планировалось больше беготни, пинков, гнущихся под ураганом деревьев и т д. Но потом я решил убрать все такие спорные агрессивные моменты, сделав ролик более добрым, пусть и менее "смешным"

Песню из оригинального мультфильма использовать не получилась. Запись слишком старая, в плохом качестве, плюс актриса там поёт ну уж слишком высоким тоном, буквально на ультразвуке. Поэтому я прогнал текст через нейросеть suno и выбрал понравившийся вариант, ушло наверное 20 попыток

Надеюсь, вам понравится! Приятного просмотра

Показать полностью

Рыбалка

Да, опять

Да, опять Проблема, Помощь, Помогите найти, Непонятно, Спроси Пикабу

Мне нужно применить инструмент Bevel, для этого я нажимаю shift+Alt+левая кнопка мыши что бы выделить все ребро, но у меня возникла проблема, я не могу найти крайнее ребро, подскажите, пожалуйста.... (Только давайте без хейта, да, я не умею формулировать вопрос и если я задаю такие тупые вопросы, мне в блендере делать нечего,но нормальные люди, ответьте пожалуйста, если что-то не до рассказал, скажите что, я вам скажу.)

Показать полностью

Неко Парк

Неко Парк

Blender симуляция ткани

Отличная работа, все прочитано!