Blender: стеклянная фигура с дисперсией
Рассказываем о простых способах добавить 3D в дизайнерский проект.
Иллюстрация: Полина Честнова для Skillbox Media
3D в графическом дизайне становится очень популярным инструментом, который помогает сделать визуальную часть продукта уникальнее и интереснее для пользователя. Поэтому для профессионального роста вам понадобится Blender — бесплатная программа для моделирования, где можно быстро собрать интересную композицию.
В этой инструкции рассказываем, как сделать стекло с дисперсией.
Если вы ни разу не работали в Blender, советуем сначала посмотреть или прочитать вводную лекцию.
Дополнение Extra Objects
Это расширение позволяет добавлять в сцену различные объекты — например, ракушки, пирамиды, «круглый куб». Оно предустановлено в Blender, но по умолчанию отключено.
Чтобы включить Extra Objects, нажмите F4, выберите Preferences во вкладке Add-ons, в поиске найдите Extra Objects и напротив него нажмите галочку.
Фигура и сцена
1. Откройте Blender и всё удалите из сцены.
2. Нажмите Shift + A и перейдите в Mesh → Math Function → Regular Solids. В нижней части экрана нажмите на вкладку (Regular) solids и в появившемся окне укажите Vertex Truncation 0,660, а Edge Truncation — 0,630. По желанию эти параметры можно поменять.
3. Нажмите Shift + A и перейдите в Light → Area. С помощью Move поставьте этот источник света над вашей фигурой. Чтобы увеличить площадь света, нажмите S и тяните курсор вверх. На панели настроек справа выберите настройки объекта , в поле Power укажите 500 W.
4. Сделайте ещё две копии вашего света. Одну поставьте под фигуру, а другую — за фигуру. Позже эти источники света можно будет скорректировать. Свет важно выставить сейчас, так как без него вы никакой дисперсии не увидите.
5. Нажмите Shift + A и перейдите в Mesh → Cube. Выделите куб, нажмите S и увеличьте его, чтобы свет и фигура были внутри него. Затем нажмите Tab, потом клавишу 3, выделите фронтальный и верхний полигоны и нажмите Delete, а в появившемся меню выберите Faces — полигоны удалятся.
Материалы
Сцена
1. Выделите куб сцены, на правой панели перейдите в настройки материала и нажмите +New. На рабочем пространстве зажмите край нижней панели и потяните его вверх. В правом углу нажмите Timeline и выберите вместо него Shader Editor. Из появившейся панели ничего не удаляйте — вам это понадобится.
2. Нажмите Shift + A и в появившейся панели нажмите на строку поиска. Введите в ней ColorRamp и соедините его с Principled BSDF через Color.
3. Нажмите Ctrl (⌘) + T — у вас автоматически появятся Texture Coordinate, Mapping и Image Texture. Автоматическое соединение между ними нужно изменить, должно быть так — Texture Coordinate (Generated) → (Vector) Mapping (Vector) → (Fac) ColorRamp. Image Texture просто удалите.
4. Поменяйте цвета в ColorRamp — это будет цвет вашего фона.
5. В Mapping поменяйте положение градиента так, как вам нравится. Также его положение можно менять через ColorRamp.
6. В Principled BSDF укажите Metalic — 0,6, Specular — 0,3, Roughness — 1.
Схема материала сцены будет выглядеть так:
Стекло с дисперсией
1. Стекло лучше делать сразу с отображением рендера, чтобы вам было удобнее отслеживать изменения в отражениях стекла. Откройте настройки рендера и вместо Eevee выберите Cycles, а вместо CPU выберите GPU Compound. Также в блоке Sampling в пункте View укажите Max Samples 100 и снимите галочку с Denoise.
2. Выделите фигуру, на правой панели перейдите в настройки материала и нажмите +New. На рабочем пространстве зажмите край нижней панели и потяните его вверх. В правом углу нажмите Timeline и выберите вместо него Shader Editor. Из появившейся панели удалите Principled BSDF.
3. Нажмите Shift + A и в появившейся панели нажмите на строку поиска. Введите в ней Mix Shader и выберите материал с тем же именем — он появится на пространстве. Далее вы так и будете добавлять новые материалы на пространство.
4. Через Shift + A добавьте Fresnel, Glass BSDF и Transparent BSDF. Соедините их все с Mix Shader, а его подключите к Material Output через Surface. Фигура должна стать просто стеклянной.
5. Через Shift + A добавьте ColorRamp и соедините его с Glass BSDF через Color.
6. В ColorRamp сделайте градиент из чистого красного, зелёного и синего цветов. При этом насыщенность в настройках RGB должна быть 3. Например, значение красного цвета: R — 3, G — 0, B — 0.
По краям спектра добавьте чёрный. Над спектром нажмите на стрелку и выберите Distribute Stops Evenly, чтобы цвета были расположены равномерно. Итоговый градиент должен выглядеть так:
7. Нажмите Ctrl (⌘) + T — у вас автоматически появятся Image Texture, Texture Coordinate и Mapping — из них нужно удалить все, кроме Texture Coordinate.
8. Через Shift + A добавьте White Noise и соедините его: Texture Coordinate (Generated) → (Vector) White Noise (Value) → (Fac) ColorRamp.
9. Через Shift + A добавьте Map Range и соедините его: White Noise (Value) → (Value) Map Range (Result) → (IOR) Glass BSDF. Внутри Map Range укажите To Min 1,4 и To Max 1,5.
10. По желанию в Glass BSDF укажите Roughness 0,2 и между Glass BSDF и ColorRamp добавьте MixRGB. В Color 2 укажите нужный цвет стекла, а вместо Mix укажите Multiply.
Чтобы не запутаться, ориентируйтесь на эту схему материала:
Доработка сцены и анимация
1. При необходимости поменяйте расположение и силу света, чтобы добиться хорошей композиции. Также можно покрутить и фигуру из стекла — дважды нажмите R и сможете вращать её как угодно.
2. В правом углу вместо Shader Editor выберите Timeline. Выделите фигуру, на правой панели настроек нажмите . Убедитесь, что ползунок в таймлайне стоит на первом фрейме, и в блоке Rotate в поле Z укажите 0 и нажмите на квадрат напротив него — строка должна стать жёлтой.
3. Переместите ползунок в таймлайне на последний фрейм и в Rotate Z укажите 360 — и так же прожмите квадрат.
4. В правом углу вместо Timeline выберите Dope Sheet. Затем перейдите в Key → Interpolation Mode → Linear. Вернитесь назад в Timeline и проверьте результат. Ваша фигура должна медленно вращаться.
Рендер анимации
1. На панели настроек справа откройте настройки рендера . В блоке Render укажите хотя бы 80 семплов и снизьте Noise Threshold до 0,2, чтобы кадры рендерились быстрее.
2. На правой панели нажмите на иконку с принтером, перейдите в блок Output и вместо PNG выберите FFmpeg. Кликните на строку с надписью temp, чтобы изменить путь сохранения анимации.
Прежде чем переходить к рендеру всей анимации, попробуйте вывести один кадр — Render → Render Image. Посмотрите, сколько секунд он рендерился, и затем рассчитайте примерное время. Например, в нашем случае один кадр выводился 10 секунд — 10 (секунд) * 250 (кадров) / 60 (секунд) = 41 минута.
Если один кадр будет рендериться 20 секунд, то на всю анимацию вы потратите минимум полтора часа — это очень долго. Чтобы уменьшить время, в настройках рендера снижайте количество семплов и попробуйте разные варианты в Tile.
Помните, что в анимации качество одного кадра не так важно, как в статичной картинке. Поэтому можно указать и 50 семплов, если результат вас устраивает.
Подробнее о настройках рендера в Blender читайте в отдельной инструкции.
Результат:
Больше интересного про дизайн в нашем телеграм-канале. Подписывайтесь!