Когда мы говорили о создании статических сцен, то для простоты и скорости реализации поверхности воды рекомендовали использовать объекты Panel, Relief и Landscape (ландшафт).
То есть, они позволяет быстро и удобно создать неровные поверхности, а если мы используем текстуру (материал) воды, то все похоже на реальность. Причем данный объект можно применять и для анимации, например, изменяя его параметры с течением времени, а также смещая, иногда делают и такое. Но для получения профессионального результата в рамках динамики есть гораздо более удобный и правильный инструмент — Cloth (сукно), который используется для очень многих целей: создания одежды и так далее. Он же применяется и для реализации водной поверхности. Как это сделать мы рассмотрим на конкретном примере.
Примечание: я буду давать пример на старой версии Cinema4D (какая есть под рукой), в новых все то же самое, только другие пиктограммы и метры заменены на сантиметры.
Шаг 1
Запускаем Maxon Cinema4D, создаем новый проект. В рабочую область помещаем объект Plane. Устанавливаем размеры, ну…, давайте выберем 1500х1500 м, разбиение на 60 сегментов в каждую из сторон. Делаем объект редактируемым, нажав «С» (либо контекстное меню над объектом Panel в менеджере объектов, пункт Make Editable).
Шаг 2
Теперь нам нужно прикрепить к нему ключевое свойство Cloth. Для этого в меню File над менеджером объектов (!) выбираем: Clothilde Tags >> Cloth. В результате, в свойствах Panel появится соответствующая пиктограмма, а в панели свойств отобразятся все настройки этого модуля с множеством закладок, среди которых выбираем Forces (силы) и меняем параметр Gravity (притяжение), выставив его в -1.
Шаг 3
Далее переходим к рабочему окну, переключаемся на вид сверху. На данном этапе нам необходимо зафиксировать все крайние точки в их положениях, чтобы сукно не трепалось как флаг на ветру. Причем этот момент важно знать и для случаев, когда вы будете создавать берега и так далее.
Для этого, в режиме работы с вершинами с помощью курсора выделения Rectangle Selection, а также удерживания клавиши Shift для объединения, выделяем все крайние точки по периметру нашей панели. Сделав это, переходим в закладку Dresser и в пункте Fix Points нажимаем кнопку Set. В результате все выделенные точки закрасятся в розовый цвет.
Шаг 4
Делаем волны или рябь. Этого эффекта можно добиться тремя различными путями. Первый — работа с настройками Cloth>>Force, где есть много параметров управления ветром, но данный вариант довольно громоздок по результатам.
Второй является более удобным — с помощью ветрогенератора. В пункте Options главного меню программы находим Particles>>Wind. Добавляем. В его свойствах изменяем только два параметра, скорость (Object >> Wind Speed устанавливаем как 1, 2 или 3) и область действия (Shape>>параметр Shape как Unlimited (неограниченный)). А в рабочей области сам объект относим на определенное расстояние от нашей панели.
Следующим этапом нам нужно указать, что объект ветра будет оказывать влияние на сукно, для этого входим уже в свойства Cloth и в закладке Expert видим поле Include(включить). С помощью курсора мыши переносим туда из менеджера объектов Wind. Переходим в режим анимации, и смотрим результат.
Причем стоит отметить, что генератор ветра удобен для случаев, когда у нас контур не являются замкнутым. То есть, на самом деле он отлично подходит для реализации флагов, парусов и т.п., хотя в ряде случаев с его помощью можно сделать прибрежные волны, например.
И третий метод — самый подходящий. Мы делаем те же операции, что и с ветрогенератором, только вместо него используем модуль Particle >> Turbulence (турбулентность), установив силу Force как 5, а область действия Shape>>параметр Shape как Unlimited (неограниченный). Получается искомая рябь на поверхности воды.
Шаг 5
Добавляем плавающий объект. В качестве оного возьмем, к примеру, куб. Вставляем, меняем размеры на 100х100х100 м. Теперь точно также как в шаге 2 мы прикрепили к панели модуль Cloth, к новому объекту мы подключаем Collider (находится в той же закладке Clothilde Tags). В настройках Collider меняем параметр упругости Bounce на 50%, как показано на рисунке.
Затем из Particles выбираем модуль Attractor (точка притяжения), добавляем, а в окне менеджера объектов устанавливаем его как дочерний для куба. Изменяем размеры Attractor на большие, чем есть у самой фигуры, например, 150х150х150 (закладка Shape). Также увеличиваем силу притяжения Strength в закладке Object, выставив параметр, к примеру, равным 200.
Затем добавляем Attractor во включенные модули Cloth, как мы это уже сделали с Wind (открываем свойства Cloth, выбираем закладку Expert, переносим Attractor в Include).
Теперь переходим в режим анимации, где рисуем траекторию движения куба, после чего смотрим на результат уже в анимации.
Примечание. На самом деле Attractor можно использовать без связки с фигурами, то есть он будет работать и так, что нередко применяется при создании красивых волн и так далее.
Шаг 6
Само движение мы получили, осталось только оттекстурировать и показать, что это вода. В принципе, для ее создания можно и не применять каких-либо специальных текстур, с сгенерировать материал математическим способом. В рамках Material вы можете найти поверхность воды (Surface >> Water), ее мы ставим в качестве Color и там же смешиваем с каким-нибудь цветом для придания оттенка. Причем, следует отметить, что поведением поверхности воды можно и нужно управлять, для чего есть параметры в Cloth в разделе Forces и тому подобное.
И чтобы все получилось успешно нам нужно собрать сцену. Например, я решил сделать зимний пейзаж, во-первых, добавив два элемента — пол (Floor) и небо (Sky). Последнее лучше сделать за счет специального автоматизированного модуля Create Sky, который можно найти в закладке с плагинами (Plugins). Вариант с небом хорош и тем, что там автоматически расставляется хорошее освещение. И в рамках сцены мне понадобилось только два дополнительных. А пол и куб мы текстурируем по своему усмотрению.
Во-вторых, — горы сделаны с помощью 3D-примитива Landscape.
Видео-вариант вы можете загрузить по ссылке (~250 Кб) либо посмотреть на видеопрезентации ниже.
Перепечатка материалов или их фрагментов возможна только с согласия автора
|