Как сделать море в блендере

Обновлено: 04.07.2024

Сплайн (spline) – математически рассчитанная кривая или поверхность, плавно соединяющая отдельные точки. В Blender существует две разновидности сплайнов, а каждая разновидность имеет свои режимы. Поэтому нам будет достаточно знать, что сплайн — это кривая, плавно соединяющая точки.

Фигуры вращения в Blender

Такие фигуры состоят из профиля, который вращается вдоль одной из осей. Если прямоугольник вращать вдоль своей оси, то получится цилиндр. Вот и получается прямоугольник — профиль, а цилиндр — фигура вращения. Этот простой пример проиллюстрируем в Blender.

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

Bezier Circle в Blender

Начнём рисовать бокал. Нам предстоит нарисовать профиль, используя сплайн, а за тем нарисованный нами профиль превратить в сетку, вращая его вокруг оси. В нашем распоряжении имеются два вида сплайнов: Bezier и NURBS:

Bezier Circle в Blender

Начнём рисовать бокал. Нам предстоит нарисовать профиль, используя сплайн, а за тем нарисованный нами профиль превратить в сетку, вращая его вокруг оси. В нашем распоряжении имеются два вида сплайнов: Bezier и NURBS:

Они отличаются математическими алгоритмами. Сначала будем работать c Bezier Circle. Нам нужен замкнутый контур, так как бокал будет иметь толщину.

Добавляем в новую сцену Bezier Circle и клавишей Tab переходим в режим Edit Mode.

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

Существуют несколько режимов отображения и управления сплайном.

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

Они отличаются математическими алгоритмами. Сначала будем работать c Bezier Circle. Нам нужен замкнутый контур, так как бокал будет иметь толщину.

Мало похоже на бокал. Что же, выделяем все точки клавишей A и разбиваем заготовку на дополнительные направляющие (W / Subdivide). Точек стало больше и немного изменилась форма заготовки. Вооружаемся терпением и двигаем точки, придавая заготовке нужную форму.

Если надо, разбивайте фигуру на дополнительные точки, но будьте осторожны, помните, что каждое разбиение слегка деформирует заготовку. Выделяйте точки, между которыми Вам нужна еще одна и разбивайте. Помните, что точка выбирается нажатием на правую кнопку мыши. После того, как Вы выбрали точку, нажмите G, и передвигайте её. Чтобы принять изменения формы, нажимайте на левую кнопку мышки, а чтобы отменить — правую. Должен получиться примерно вот такой профиль:

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

Из сплайна в сетку

Переходим в Object Mode, нажав Tab, затем нажимаем Alt+C, соглашаемся на конвертирование в Mesh. Сейчас, еще раз нажав на Tab, можете посмотреть, что случилось с нашей кривой. Она стала трехмерным объектом, правда, без высоты. Теперь опять выделяем все точки клавишей А (все полигоны выделяются жёлтым цветом).

В меню Spin указываем количество градусов, на которые надо повернуть наш профиль. Можно создать часть бокала и анимировать его появление, но мы будем делать полный бокал, поэтому выставляем Spin равный 360 градусов:

Провернуть такой трюк автоматически не выйдет: придется поработать руками.

Реалистичный Minecraft и вода в Portal: подделываем геймплей с помощью Blender

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

В мае ютубер 5tick man выпустил три коротких, но необычных ролика. В одном он играл в Garry's Mod, стреляя из водной пушки: она создавала блок, испускающий бесконечное количество реалистичной воды. В другом видео в Portal внезапно появлялась субстанция, проходящая через порталы и пачкающая стены.

Третье, самое длинное видео, было посвящено Minecraft. Сперва мы оказывались в затопленном помещении — причем вода уходила через дыру в полу, — а затем встречались с рекой лавы. Вот, посмотрите.

Механики и эффекты, показанные во всех роликах, отсутствуют в оригинальных играх и сделаны без помощи модификаций. На самом деле это пост-эффекты, добавленные геймплейным роликам с помощью Blender и Perfect Fluids.

Созданию эффектов 5tick man посвятил отдельное видео. К сожалению, добавить их автоматически невозможно: требуется достаточно большая ручная работа. Но это все равно проще, чем рендеринг с нуля.

  • Сперва записывается обычный геймплейный ролик. Основных требований два: высокий битрейт и отсутствие интерфейса.
  • Получившееся видео выгружается в Blender. Здесь настраивается трекинг движения камеры; это частично автоматический, но все равно долгий процесс.
  • Когда трекинг готов, в Blender можно создать фейковую геометрию, повторяющую геометрию игрового мира. В некоторых случаях можно не создавать геометрию вручную, а импортировать целые локации. Например, карту Team Fortress 2.
  • Текстуры для геометрии создаются напрямую из геймплейного ролика.
  • Добавляемые эффекты — например, вода или новое освещение — взаимодействуют именно с геометрией, созданной в Blender.

На создание качественного ролика, рассказывает ютубер, уходит очень много времени. Только настройка трекинга камеры занимает 1-3 часа на каждые 10 секунд видео, тонкий тюнинг эффектов тоже требует массу сил.

Но если геометрия и трекинг сделаны аккуратно, то создается полное впечатление, что все дополнительные эффекты были в реальном геймплее.

Создаём стакан с водой при помощи Blender и Mitsuba.

Filippo Veniero, TLC инженер и 3Д художник-фрилансер, объяснит в этом уроке, как использовать движок рендера Mitsuba для получения физически точной визуализации стеклянного стакана в Blender, в комплекте с водой, пузырьками и соломинкой.

1848_tid_render_r.jpg

В этом уроке я покажу вам, как при помощи Mitsuba в Blender создать физически точный стеклянный стакан. Mitsuba - это открытый, основанный на физике рендер, работающий под Linux, Mac OS X, Windows, он построен по модульному принципу. Доступны многие методы визуализации (прямое освещение, трассировка пути, двунаправленная трассировка пути, фотонная карта и многое другое). Он поддерживает объёмный рендеринг и наиболее часто используемые модели рассеивания (матовое стекло, пластик, металл).

Моделирование стакана.

Откройте Blender и включите Mitsuba (File > User Preferences > Addons). Измените движок рендера с Blender на Mitsuba и отредактируйте путь к исполняемому файлу в поле Executable Path.

1848_tid_1.jpg

1848_tid_1_1.jpg

Создание воды.

1848_tid_2.jpg
1848_tid_2_normals.jpg

Добавление пузырьков и соломинки.

1848_tid_3.jpg

Материалы

Добавьте плоскость как на картинке ниже, перейдите в режим редактирования и сделайте Unwrap. В режиме объектов добавьте материал diffuse, а затем добавьте текстуру пола во вкладке Texture. Вернитесь во вкладку материалов, кликните по кнопке T (справа от reflectance color) и выделите текстуру пола. Выделите стакан и добавьте материал dielectric: установите interior IOR на 1.49, а exterior на 1.00. Выделите воду и добавьте ещё один материал dielectric (interior IOR 1.49 а exterior 1.33 – и убедитесь что нормали ориентированы также как на изображении ниже).

Введите interior IOR 1.33 и exterior 1.00 для верхней части воды, и interior IOR 1.00, exterior 1.49 для пузырьков. Выделите соломку и добавьте материал white plastic, затем добавьте материал red plastic и (в режиме редактирования) примените его к правым граням.

1848_tid_4.jpg

Настройки сцены и рендера.

Для этого рендера мы будем использовать photon mapping integrator, который работает лучше с закрытой комнатой, поэтому добавим плоскости (применив дифузный материал) вокруг сцены как показано на картинке ниже, установим камеру и добавим сферу внутрь сцены (материал emission).

Во вкладке рендера выберите Photon Mapper и нажмите F12, чтобы начать рендеринг. Если результат слишком шумный, попробуйте увеличить количество фотонов и/или сэмплов (в моей работе я использовал 96 пикселей на сэмпл).

1848_tid_5.jpg

1848_tid_render_r.jpg

Полезный совет: Постобработка в Gimp.

Откройте картинку в Gimp, настройте кривые, а затем сдублируйте слой. Добавьте Gaussian blur (20 пикселей) на новом слое и установите режим смешивания на ADD.

как создать море в blender 3d морскую поверхность modifier ocean blender 3d у

Zivert - CRY | Премьера клипа

04:24

LOBODA - Americano (Премьера сингла, 2021)

03:31

Баста – Любовь и страх (feat. Дворецкая)

05:41

Ozoda - Esla Meni (Offıcıal Clıp 2021)

05:02

Султан Лагучев - Cкучает осень (премьера 2021)

02:29

Oliver Tree & Little Big - The Internet [Music Video]

03:36

Coldplay X BTS - My Universe (Official Video)

04:43


Я сделал русский перевод видеоурока этого чувака. В первой части очень хорошо объясняется, как делать волосы из кривых.



Включение бевельного объекта для кривой Путь в табе Геометрия в Свойствах Кривых.


Материал

Вторая часть видеоурока на любителя. Это схемы материала чувака: A, B

Я пробовал, терпения не хватило. Сильно долго. Этот вопрос скорее теоретический, чем практически применимый. Сайклз вообще медленный сам по себе.

Но я сделал нечто подобное для рендерера Блендер. Идея заключается в том, чтоб вдоль волосяных кусков пустить борозды из нормала, а кончики сделать прозрачными.

1

2

3

4

5

6

1

Material Nodes
2

Composition Nodes



Oписание

В рендерере Блендер узловой материал не работает прямо на кривых. Почему-то UV геометрия на кривые не ложится, хотя и активирована в табе Текстурное пространство в Свойствах Кривых. Наверное, она только в Сайклз работает. Потому волосы я перевел в мэш, уменьшив разрешение Preview U на волосах до 2, а на бевеле до 6, чтоб комп сильно не тормозил. Ниже вы найдете подробное описание, как конвертировать кривые в полисетку. Потом, чтоб волоса стали поглаже, на мэш я поставил модификатор Subdivision Surface.


Потом я подключил узловой материал к этим волосам.


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


Потом в Свойствах Визуализация я включил Затенение: Альфа: С прозрачностью.


А потом с узлами композитинга я прорендил картинку.

1
2
3


Конвертирование кривых в полисетку


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

Я в качестве бевела использую окружность NURBS, а не безье, как на видео выше. Можно использовать любую кривую.



Nurbs Curve as Bevel



Path as a hair strand



Path + Bevel

Перед конвертированием надо уменьшить Resolution: Preview U на бевеле и, возможно, на волосах. Если оно сильно большое компьютер может зависнуть.


Path в мэш переводится комбинацией Alt-C.


Конвертирование полисетки в систему частиц


Сначала надо сделать швы на поперечных реберных петлях. Волосы будут расти поперек них и повдоль продольных реберных петель.

В Object Mode в разделе Particles в табе HairNet включи Emit Hair on Itself и нажми Add Hair From Sheets.


Если растить волосы на отдельном эмиттере, как на видео выше, то сначала надо применить положение, вращение и масштаб для волос и эмитера комбинацией Alt-A. Иначе волосы разлетятся. Так же я заметил, что на одном эмитере системы больше двух ведут себя непредсказуемо. Волосы третьей и последующих систем выгибаются под немыслимыми углами.

Переключись в Particle Mode. Кликни по волосам.

Кликать обязательно, чтоб система частиц стала нередактируемая, а волосы не разлетелись в разные стороны.

Еще помогает стереть дубликаты: A > W > Remove Doubles.

В Свойствах Particles поставь


Tab

Option

Value
Children Display 1
Children Render 3
Children Radius 0.01
Children Roundness 0
Render Strand Render OFF
Render Bi-Spline ON
Render Steps 6
Roughness Uniform 0.2
Roughness Size 1
Roughness Endpoint 0.5
Roughness Shape 10
Roughness Random 1
Roughness Size 10

Radius желательно ставить низкий. Так натуральней выглядит. Radius - это расстояние на которое дети Simple расползаются от родителя. Для разных прядей можно ставить разный радиус.

По желанию еще можно экспериментировать с Kink, но это не обязательно.


Если волоса получатся толстые и бугристые, то картинку надо прорендить на большее разрешение - чем больше, тем лучше - а потом уменьшить ее в GIMP.


Axis
Value
Y 600
X 800
Size 200%



Axis
Value
X 800
Y 600
Size 800%

Но сначала старайся уменьшить толщину волос в Material > Strand, поставив Blender Units.


Чтоб спрятать эмитер поставь Bounds в Maximum Draw Type. Для анимации прикрепи его к черепу Ctrl-P.


Так же в лампе сделай тень более мягкой, а то будет черточками, как от проволоки.





Мягкая тень от волос

Читайте также: