Развевающийся флаг в 3d max

Опубликовано: 2009.09.17 • Просмотров: 41 055

Тэги: анимация, флаг

Развевающийся флаг Канады

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

Содержание

Создание флага

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

Будущий флаг

Теперь добавим к плоскости модификатор UVW Map (он пригодится для наложения текстур). В его параметрах выбираем тип Planar, а затем снимаем галку с пункта Real-World Map Size:

Добавляем модификатор UVW Map

Затем переходим непосредственно к самому основному. Добавляем модификатор Cloth. Первым делом кликаем по Object Properties, после чего появится новое окно свойств. В левой части необходимо выделить плоскость, которую мы используем для создания флага, далее переключить флажок с Inactive на Cloth. Чуть ниже в Cloth Properties выбрать одно из предустановленных значений (можно поиграться с параметрами самому, но я остановился на материале Silk). После этого остается только нажать Ok.

Модификатор Cloth

Остается настроить еще пару параметров. Прокручиваем свойства модификатора до вкладки Simulation Parameters. Здесь необходимо указать силу гравитации (можно кликнуть на кнопку Earth и значение -980 установится само) и один из важных параметров — cm/unit, который будет отвечать за физический размер флага. Чтобы было понятней — уменьшая или увеличивая это значение, мы меняем значение размеров куска материи для просчетов. Либо это будет шелковое полотонище 2 на 3 метра, либо кусок 20 на 30 сантиметров. При этом размеры на экране остаются постоянными.

Модификатор Cloth

Анимация флага

С настройкой физических параметров мы закончили, теперь перейдем к непосредственно к анимации. Поскольку флаг должен развеваться на ветру, необходимо этот самый ветер добавить. Create -> SpaceWarps -> Forces -> Wind. Остается придать ему нужное направление:

Создание ветра

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

Добавляем турбулентность

После того, как вы добавили ветер, необходимо указать в модификаторе Cloth флага, что этот ветер собственно будет на него дуть :) Для этого в свойствах модификатора Cloth нажимаем на кнопку Cloth Forces. В появившемся окне необходимо перенести ветер из Forces in Scene в Forces in Simulation и нажать Ok.

Добавляем ветер в список сил, действующих на флаг

Если запустить симуляцию сейчас, то будет видно, как созданный флаг улетит, колыхаясь на ветру. Осталась самая последняя деталь — закрепить флаг. Для этого нужно развернуть модификатор Cloth и кликнуть по пункту Group:

Добавляем точки крепления флага

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

Добавляем точки крепления флага

После того, как точки выделены нажимаем на кнопку Make Group. В выскочившем окошке соглашаемся с именем Group01 и жмем Ok. После этого вкладка Group примет следующий вид:

Добавляем точки крепления флага

Затем в списке групп выделяем созданную Group01 и жмем по кнопке Drag:

Добавляем точки крепления флага

Теперь вместо Group01 (unassigned) должно появиться Group01 (Drag):

Добавляем точки крепления флага

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

Моделирование развевающегося на ветру флага

Последний штрих

В процессе симуляции можно поиграться с параметрами гравитации и настройками ветра, чтобы добиться необходимых вам волн. Затем остается создать материал полотнища флага, где в качестве Diffuse Color указать карту Bitmap с необходимым вам изображением флага. На сайте http://flags.redpixart.com/ вы можете бесплатно взять изображения флагов в большом разрешении (размеры текстур от 2 000  пикселей по ширине, формат gif). Для этого достаточно перейти в раздел список стран и загрузить все флаги. После этого созданный флаг примет следующий вид:

Развевающийся флаг Канады

Комментарии

Дмитрий • 2011.03.31

Спасибо за мини-урок

Mikhail Mishchenko • 2011.03.31

to: Дмитрий
Всегда пожалуйтса!

Юрий • 2011.04.06

Будьте любезны, подскажите, как ограничить движение флага по вертикали.

Mikhail Mishchenko • 2011.04.06

to: Юрий
Необходимо выбрать вместо двух угловых точек, которые фиксируют флаг, весь верхний ряд, либо выборочные вертексы (равносильно шторе на гардине). Это исключит вертикальные колебания.

Юрий • 2011.04.07

Спасибо. Но тогда пропадет "живое" трепыхание флага. Задача — ограничить амплитуда колебаний сверху и снизу не фиксируя других точек кроме крайних левых.

Mikhail Mishchenko • 2011.04.11

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

Андрей • 2011.07.13

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

Андрей • 2011.07.13

как в ролике в английской премьер лиге развертываются на домах баннера с логотипами клубов http://rutube.ru/tracks/4587845.html?v=c03cf2a376f5e4004049631cdd901956

Mikhail Mishchenko • 2011.07.16

to: Андрей

Добрый день, Андрей. Я сейчас не могу сказать точно, поскольку нет времени проверить лично, поскольку я сейчас путешествую по Азии. Но первое, что приходит на ум — сделать сплайн-спираль, с несколькими витками. Затем сделать Extrude на ширину баннера с несколькими сегментами — чтобы все было гладко. Затем конвертировать в Mesh. По идее, у вас должен получитя эдакий свиток, либо рулон. Остается закрепить внешние края и сделать все, как в мануале. Ну разве что исключить ветер. Я так думаю, что должно сработать. Если будет время — отпишитесь пожалуйста здесь, думаю многим будет полезно.

Вячеслав • 2011.08.12

Интересно, почему у меня симуляция останавливается на половине? Если комп нетянет, может есть способ вызуализировать по кускам?

Mikhail Mishchenko • 2011.08.12

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

Сибиряк • 2012.02.02

Спасибо за урок, очень все хорошо получается!!!

Mikhail Mishchenko • 2012.02.08

to: Сибиряк
Всегда пожалуйста!

Дмитрий • 2012.03.13

Здравствуйте, спасибо за ваши уроки, очень многое почерпнул из них. У меня вопрос, а как связать цикл? Я хочу чтобы флаг веял не три секунды, по крайней мере минуту.

дика • 2012.04.17

здраствуйте,неподскажите как флаг анимировать штоб он по заданной траектории двигался и при этом на извивался на ветру,вобщем когда болельщики машут флагом восьмеркой вот так можно ли сделать?? заранее спасибо..

Ис • 2012.04.20

Дика. Можно если анимировать с разных сторон с разными настройками ветра)) потом эту анимацию со стыковать. И еше есть множество вариантов создание флага на пример реактор и партикли флов. А этот который тут описывают это саммый легкий способ.удачи в творчистве))

Apocalyp • 2012.06.16

Спасибо за урок. Помогите пожалуйста у меня почему-то симуляция работает, а при экспорте в avi отображается только текущий кадр, несмотря на то что в рендеринге стоит диапазон кадро 0-100.

Mikhail Mishchenko • 2012.06.25

to: дика

Алекс • 2013.12.05

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

Mikhail Mishchenko • 2013.12.10

to: Алекс
К сожалению, ни чем не могу помочь в этом случае. Даже если рендерить в формат eps, то там все равно окажется флаг картинкой.

Ваше имя
Электронная почта
Напечатайте ответ: 6 + 2 + 9 = ?