Вернуться   Foxter.ru > Графика > 3D / Трехмерная графика > Уроки

 
 
Опции темы Опции просмотра
Старый 13.03.2007, 00:13   #43086  
Хранитель
 
Аватар для Bloke
 
Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616Репутация: 279616
Регистрация: 24.06.2006
Адрес: КК
Сообщения: 424
По умолчанию Создание взрывной волны

Часть 2: Создание взрывной волны


Начните урок:
  • Продолжите предыдущий урок или откройте файл asteroid_impact_part2.max.

Создайте взрывную волну:

Чтобы заставить частицы распространяться радиально и охватывать поверхность геометрии планеты, Вы используете оператор Speed By Surface. Иногда это может происходить медленно, особенно с плотными объектами, но на примере нашей сферы, все должно хорошо сработать.

1. Под тестом Spawn, добавьте оператор Speed By Surface, а затем щелкните этот оператор, чтобы увидеть его параметры.



Этот мощный оператор предоставляет довольно большое количество элементов управлений.

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

2. Выберите из первого выпадающего списка Control Speed Continuously.

3. Дальше, установите Speed к 30 с variation в 5, чтобы не слишком разбивать форму ударной волны.

Оператор Speed By Surface позволяет Вам ссылаться на множество объектов, даже на объекты, форма которых анимирована, так же как и определять значения скорости по поверхности, основанной на материале.

4. В группе Surface Geometry, щелкните Add и выберите объект Planet.



5. Установите Direction to Parallel To Surface.

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

Группа Continuous Speed Control содержит некоторые важные элементы управления. Accel Limit позволяет Вам ограничивать изменение скорости и направления частиц. Если значение слишком высоко, частицы могут ненамного выйти из-под контроля.

6. Установите Accel Limit к 10.



Дальше находятся элементы управления Range и Falloff Zone, которые позволяют Вам ограничивать степень эффекта. Range определяет расстояние, в пределах которого этот оператор будет воздействовать на частицы; Falloff Zone - это ослабление эффекта между начальной и конечной точкой. Но в этом примере эти элементы управления не имеют значение, потому что поверхность должна всегда воздействовать на частицы. Иначе, как только бы они достигли предела диапазона, они скользили бы по поверхности нереалистично. Поэтому, Вы можете оставить опцию Unlimited Range включенной.

7. Запустите анимацию.



Астероид создает кольцо частиц, похожее на ударную волну, которая движется по поверхности планеты от места падения астероида. Иногда, этот процесс медленно обрабатывается в этом событии, поэтому Вы могли бы добавить оператор Cache, когда это событие будет закончено. Оператор Cache "выжигает" движение частицы в память компьютера для более быстрого воспроизведения. Он чем-то напоминает предварительную обработку анимации, таким образом компьютер думает только о представлении частиц, не выясняя при этом, где они должны находиться.

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

8. Добавьте оператор Force под Speed By Surface и назначьте на него деформацию пространства Drag01. Установите Influence % к 500.

9. Снова запустите анимацию.

Ударная волна замедляется по истечению некоторого времени, воздействие Drag01 вполне реалистично.

Вскоре, Вы усилите эффект ударной волны, но сначала Вы закончите это событие. Вы разобьете поток частицы таким образом, чтобы некоторые из частиц стали ударной волной, а другие стали бы осколками камней. Это можно сделать с помощью теста под именем Split Amount.

Создайте осколки камней:

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

1. В событии RocksShockwave, добавьте под тестом Spawn тест Split Amount.



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

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

2. Используйте опцию по умолчанию Fraction Of Particles, установите Ratio % к 20.



Так как Split Amount - это тест, частицы, которые расщеплены, отсылаются к следующему событию, в то время как другие остаются. Скоро, Вы настроите этот тест так, что 20 процентов из расщепленных частиц станут осколками гранита.

Если Вы не подключите вывод теста Split Amount к любому другому событию, Particle Flow просто проигнорирует его. Вы можете проверить это, установив Particle View > Options menu > Track Update к Particle Count. Это добавляет вкладку к каждому событию, показывая сколько частиц оно содержит.


Опция Particle Count добавляет вкладку к каждому событию, которая показывает текущее количество частиц этого события.

Разложите взрывную волну на детали:

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

1. Добавьте тест Spawn на низ события RocksShockwave.



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

2. Щелкните новый тест Spawn и в группе Spawn Rate And Amount, выберите By Travel Distance.



Как и в уроке Boat Splashes, этот метод полезен, потому что он управляет числом частиц, которые родились, взяв за основу расстояние начального пути частиц. Таким образом, рождаемость быстро двигающихся частиц больше, чем частиц, которые двигаются медленней.

3. С помощью опции By Travel Distance, процент рождения частиц контролируется значением Step Size, которое Вы должны установить к 0.5.



По умолчанию, значение Offspring # установлено в 1 - этого достаточно, потому что у Вас имеется достаточное количество частиц для ударной волны, чтобы запустить ее. Однако, Вы всегда можете увеличить это значение, если этот необходимо.

4. В группе Speed, установите Inherited % к 15 со значением Variation в 5.



Это важно, потому что со значением по умолчанию в 100, все рожденные частицы сохранят полную скорость первоначальных частиц. Уменьшая это значение к 15%, мы заставим их тянуться позади на приличном расстоянии.

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

5. Добавьте новый оператор Force за пределами события RocksShockwave. Добавьте Drag01 к его списку Space Warps и установите Influence % к 100.



6. Назовите новое событие ShockwaveTrails и установите его оператор Display в Dots и измените этот цвет на темно-красный или любой другой цвет, который поможет отличить рожденные частицы от первоначальных.

7. Свяжите вывод нового теста Spawn в событии RocksShockwave с входом этого нового события.



Теперь, когда Вы запустите анимацию, сила Drag замедлит движение тянущихся фрагментов.



Тем не менее, чего-то не хватает, а именно того, что в этих рожденных частиц нет жизненного цикла: они никогда не умрут. Если они должны представлять следы плазмы, вероятно Вы захотите использовать материалы, которые будут управлять возрастом этих частиц; к примеру материал Gradient.

8. Добавьте оператор Delete к событию ShockwaveTrails, прямо под оператор Force. В параметрах этого оператора, выберите By Particle Age и оставьте по умолчанию значение Life Span в 48 с Variation в 8.



Теперь Вы увидите, что следы частиц умирают после двух секунд существования (эта сцена использует скорость передачи кадров фильма 24 fps). Это должно быть достаточно, но Вы можете всегда откорректировать эту скорость.

В этом месте, ваша диаграмма частиц должна напоминать следующую иллюстрацию.




Уроки от: 3ds Max
Перевод: Касилов Евгений


При размещении этого материала на других ресурсах, обязательно указывать место первоисточника. Первоисточником публикации данных переводов является форум foxter.ru

__________________
Bloke вне форума   Ответить с цитированием
 


Здесь присутствуют: 1 (пользователей - 0 , гостей - 1)
 

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Powered by vBulletin
Copyright ©2000-2024, Jelsoft Enterprises Ltd.
[Foxter Skin] developed by: Foxter.ru