Создание взрыва при помощи Afterburn
Создание взрыва при помощи Afterburn
Имитация взрывов — один из наиболее запоминающихся зрителю спецэффектов, используемых в фильмах. С появлением компьютерной графики при создании в отснятом эпизоде эффекта взрывающейся бомбы отпала необходимость использовать тонны взрывчатых веществ. В большинстве случаев самые красивые фейерверки, которые можно увидеть в кадрах популярных фильмов, сделаны с использованием трехмерной графики, причем созданный на компьютере фотореалистичный взрыв ни в чем не уступает настоящему. Преимущество использования компьютерного метода очевидно: кроме того, что такой способ дешевле, можно управлять характером его протекания. Кроме этого, компьютерную "съемку" можно вести даже в труднодоступных местах — например, в непосредственной близости от источника взрыва. Существует два основных способа создания таких спецэффектов — с помощью приемов видеомонтажа и при помощи редактора трехмерной графики.
Второй метод реализован и в 3ds max при помощи интегрируемого модуля от компании Sitni Sati под названием AfterBurn. Рассмотрим действие этого плагина на конкретном примере моделирования реалистичного взрыва.
Для моделирования сцены со взрывом в качестве эпицентра создаваемого огня и дыма удобно использовать источник частиц. Это позволяет управлять направлением распространения взрывной волны, а также ее радиусом. Выберите в качестве источника частиц стандартный тип источника Super Spray. Он порождает частицы из одной точки независимо от размера созданной в окне проекции иконки объекта. Выделите объект и перейдите на вкладку Modify командной панели. Установите следующие параметры для данного источника частиц.
В свитке Basic Parameters в группе настроек Particle Formation укажите угол разброса относительно оси (Off Axis Spread) = 180 и угол разброса относительно плоскости (Off Plain Spread) = 180. Это обеспечит всенаправленное распространение взрыва. Параметр Persentage of Particles в группе настроек Viewport Display определяет процент частиц, которые будут видны в окне проекции. Значение этого параметра нужно установить равным 100.
В свитке Particle Generation время начала испускания частиц (Emit. Start) установите равным 10, последний кадр генерации частиц (Emit. Stop) оставьте равным 11, значение параметра скорости (Speed) укажите = 13. Продолжительность жизни частиц (параметр Life) выберите равным 50. Размер частиц (Size) в группе настроек Particle Size укажите равным 0,05. Количество частиц в сцене (Use Rate) установите равным 18.
В свитке настроек Rotation And Collision установите время вращения частиц (Spin Time) — оставьте его равным 30 (по умолчанию), а процентное отклонение от этого параметра (Variation) выберите равным 0,42. Величину параметра Phase, определяющего начальное положение вращения частиц, установите равной 0,72. Разброс значений параметра Phase (Variation) установите равным 0,83. В группе настроек Spin Axis Controls включите опцию Direction of Travel/MBlur, установив переключатель в нужное положение, и выберите значение Stretch = 4.
Вызовите окно Environment And Effects (горячая клавиша 8) и, воспользовавшись кнопкой Add, выберите в списке атмосферных эффектов Afterburn. Вместе с этим эффектом в списке атмосферных эффектов сцены появится еще один — Afterburn Renderer. Выделите в списке строчку Afterburn. В группе настроек Source Parti-cles/Daemons свитка Afterburn Manager при помощи кнопки Pick Particles/Daemons укажите в сцене созданный вами источник Super Spray01. При этом он будет занесен в список.
Создайте стандартный источник света Target Spot. В свитке General Parameters включите опцию отображения теней, для чего установите флажок On в группе настроек Shadows, а в качестве алгоритма просчета отбрасываемой тени выберите в ниспадающем списке строчку AB Ray Trace Shadow. Вызовите окно Environment And Effects и занесите в список Source Lights созданный вами источник Spot01, используя кнопку Pick Lights.
В группе настроек Tools щелкните по значку Show in Viewport и нажмите кнопку Play Animation, чтобы проиграть анимацию в сцене. Теперь вы сможете наблюдать, как частицы источника Super Spray01 разлетаются в разные стороны и исчезают.
Добавьте в сцену еще один стандартный тип объекта — Drag. Для этого перейдите на вкладку Create в категорию Space Waprs, выберите из ниспадающего списка строчку Forces и нажмите кнопку Drag. Этот объект взаимодействует с частицами таким образом, что скорость частиц начинает уменьшаться по мере их удаления от источника. Параметры линейного торможения частиц (Linear Damping) вдоль каждой из осей выберите равными 25. Свяжите при помощи значка Bind To Space Warp на панели инструментов объект Drag с источником частиц в сцене и вернитесь в окно Environment And Effects.
Установите флажок напротив опции Self Shadows в свитке Illumination/Shading Para-meters. В группе настроек Shading щелкните по цвету Ambient Color, вызвав тем самым окно с одноименным названием. Наведите курсор на первый маркер и щелкните по нему правой кнопкой мыши. В появившемся контекстном меню выберите строку Key Color. В палитре Color Selector: Key Color установите темно-коричневый цвет.
Перейдите в свиток Color Parameters, установите переключатель в положение Color 1, щелкните правой кнопкой мыши в поле Color и выберите строку Keyless Mode. После этого щелкните в поле левой кнопкой и в появившемся окне Color Selector: Key Color выберите темно-серый цвет.
Поскольку эффект взрыва представляет собой анимационную сцену, необходимо каким-то образом управлять свойствами частиц в каждом кадре анимации. Настройки атмосферного эффекта Afterburn позволяют определить зависимость цвета частиц от плотности их размещения (Density) или от их расстояния до центра (Distance). Для нашей сцены выберите первый вариант и в нижней части свитка Color Parameters нажмите кнопку Density. Перейдите в свиток настроек Particle Shape/Ani-mation Parameters и установите минимальное значение радиуса сфер (Sph.Radius) равным 13, а максимальное — 82.
Одна из отличительных особенностей плагина — возможность анимации любых настроек при помощи AFC (Animation Flow Curves — анимационные потоковые кривые). Все параметры в свитках AfterBurn задаются двумя значениями: минимальным (Low Value) и максимальным (High Value). Между ними вы заметите кнопку с аббревиатурой AFC, при нажатии на которую появляется окно с графиком, показывающим зависимость значения параметра настройки от времени. Теперь вы можете самостоятельно отметить на кривой контрольные точки и перемещать их по своему усмотрению, тем самым изменяя форму графика и характеристику частиц.
Чтобы активизировать функцию анимирования параметров при помощи кривых, щелкните по кнопке AFC правой кнопкой мыши и в контекстном меню выберите строку Enable. При включении функции AFC вы увидите, что рисунок на кнопке изменится.
Перейдите в группу настроек Rotation и для каждой из осей включите функцию AFC. Установите максимальные значения (High Value) для каждой из осей: X=138, Y=82, Z=92. Величину разброса параметров (Var.%) для каждой из осей установите равной 13.
Перейдите в свиток настроек Noise Shape Parameters. В списке Type установите тип шума Smoke и нажмите кнопку Fireball. Нажмите кнопку Interactive Update. Переместитесь в свиток настроек Noise Animation Parameters. Активизируйте функцию AFC параметра Density, выберите максимальное значение равным нулю и при помощи кривой в окне AFC Density установите характер изменения плотности. Для этого щелкните мышью приблизительно в центре кривой, создав тем самым на ней контрольную точку. Правой кнопкой мыши вызовите контекстное меню и выберите в нем тип излома Bezier. Изменив угол наклона касательной в точке, придайте кривой такую форму, как на рис. 1. Установите минимальные значения Noise Level = 4,3, Noise Size = 25, Hi Threshold = 0,84, Lo Threshold = 0,18 и активизируйте функцию AFC для параметра Phase. Установите максимальное значение Phase = 26.
Создайте в сцене еще один объект — вспомогательный объект Afterburn. Для этого перейдите на вкладку Create в категорию Helpers, выберите в списке строку Afterburn Daemons и нажмите кнопку Explode. Откройте окно Environment And Effects и добавьте новый объект в список Source Particles/Daemons при помощи кнопки Pick Particles/Daemons. Выделите его в этом списке и нажмите кнопку Edit Particles/Daemons. При этом на командной панели появятся настройки созданного только что объекта. Перейдите в свиток Parameters объекта Explode01 и щелкните в поле Color. В появившемся окне Color нужно установить при помощи маркеров определенный порядок градиентного перехода, который будет характеризовать цвет взрывного эффекта. Задайте крайним ключевым маркерам черный цвет, после чего создайте несколько маркеров таким образом, чтобы градиентный переход осуществлялся от черного цвета к красному, от красного — к оранжевому, от оранжевого — к белому и в обратном порядке до черного. После установки градиентного перехода цвета активизируйте функцию AFC для параметра, определяющего цвет на выбранной градиентной карте с течением времени (Color Key Shift With Age) и установите его максимальное значение 0,4. Активизируйте функцию AFC для значения яркости градиента (Multiplier) и установите его минимальное значение 40, а максимальное — 0,9. В группе настроек Pertubation установите значения параметров Scale = 16, Amount = 0,9, Levels = 4,5. В группе настроек Color Blending выберите в списке значение Multiply.
Осталось только просчитать анимацию и подкорректировать параметры в зависимости от расположения объекта в сцене. В результате должен получиться реалистичный взрыв, как на рис. 2.
Сергей и Марина Бондаренко, blackmore_s_night@yahoo.com
Имитация взрывов — один из наиболее запоминающихся зрителю спецэффектов, используемых в фильмах. С появлением компьютерной графики при создании в отснятом эпизоде эффекта взрывающейся бомбы отпала необходимость использовать тонны взрывчатых веществ. В большинстве случаев самые красивые фейерверки, которые можно увидеть в кадрах популярных фильмов, сделаны с использованием трехмерной графики, причем созданный на компьютере фотореалистичный взрыв ни в чем не уступает настоящему. Преимущество использования компьютерного метода очевидно: кроме того, что такой способ дешевле, можно управлять характером его протекания. Кроме этого, компьютерную "съемку" можно вести даже в труднодоступных местах — например, в непосредственной близости от источника взрыва. Существует два основных способа создания таких спецэффектов — с помощью приемов видеомонтажа и при помощи редактора трехмерной графики.
Второй метод реализован и в 3ds max при помощи интегрируемого модуля от компании Sitni Sati под названием AfterBurn. Рассмотрим действие этого плагина на конкретном примере моделирования реалистичного взрыва.
Для моделирования сцены со взрывом в качестве эпицентра создаваемого огня и дыма удобно использовать источник частиц. Это позволяет управлять направлением распространения взрывной волны, а также ее радиусом. Выберите в качестве источника частиц стандартный тип источника Super Spray. Он порождает частицы из одной точки независимо от размера созданной в окне проекции иконки объекта. Выделите объект и перейдите на вкладку Modify командной панели. Установите следующие параметры для данного источника частиц.
В свитке Basic Parameters в группе настроек Particle Formation укажите угол разброса относительно оси (Off Axis Spread) = 180 и угол разброса относительно плоскости (Off Plain Spread) = 180. Это обеспечит всенаправленное распространение взрыва. Параметр Persentage of Particles в группе настроек Viewport Display определяет процент частиц, которые будут видны в окне проекции. Значение этого параметра нужно установить равным 100.
В свитке Particle Generation время начала испускания частиц (Emit. Start) установите равным 10, последний кадр генерации частиц (Emit. Stop) оставьте равным 11, значение параметра скорости (Speed) укажите = 13. Продолжительность жизни частиц (параметр Life) выберите равным 50. Размер частиц (Size) в группе настроек Particle Size укажите равным 0,05. Количество частиц в сцене (Use Rate) установите равным 18.
В свитке настроек Rotation And Collision установите время вращения частиц (Spin Time) — оставьте его равным 30 (по умолчанию), а процентное отклонение от этого параметра (Variation) выберите равным 0,42. Величину параметра Phase, определяющего начальное положение вращения частиц, установите равной 0,72. Разброс значений параметра Phase (Variation) установите равным 0,83. В группе настроек Spin Axis Controls включите опцию Direction of Travel/MBlur, установив переключатель в нужное положение, и выберите значение Stretch = 4.
Вызовите окно Environment And Effects (горячая клавиша 8) и, воспользовавшись кнопкой Add, выберите в списке атмосферных эффектов Afterburn. Вместе с этим эффектом в списке атмосферных эффектов сцены появится еще один — Afterburn Renderer. Выделите в списке строчку Afterburn. В группе настроек Source Parti-cles/Daemons свитка Afterburn Manager при помощи кнопки Pick Particles/Daemons укажите в сцене созданный вами источник Super Spray01. При этом он будет занесен в список.
Создайте стандартный источник света Target Spot. В свитке General Parameters включите опцию отображения теней, для чего установите флажок On в группе настроек Shadows, а в качестве алгоритма просчета отбрасываемой тени выберите в ниспадающем списке строчку AB Ray Trace Shadow. Вызовите окно Environment And Effects и занесите в список Source Lights созданный вами источник Spot01, используя кнопку Pick Lights.
В группе настроек Tools щелкните по значку Show in Viewport и нажмите кнопку Play Animation, чтобы проиграть анимацию в сцене. Теперь вы сможете наблюдать, как частицы источника Super Spray01 разлетаются в разные стороны и исчезают.
Добавьте в сцену еще один стандартный тип объекта — Drag. Для этого перейдите на вкладку Create в категорию Space Waprs, выберите из ниспадающего списка строчку Forces и нажмите кнопку Drag. Этот объект взаимодействует с частицами таким образом, что скорость частиц начинает уменьшаться по мере их удаления от источника. Параметры линейного торможения частиц (Linear Damping) вдоль каждой из осей выберите равными 25. Свяжите при помощи значка Bind To Space Warp на панели инструментов объект Drag с источником частиц в сцене и вернитесь в окно Environment And Effects.
Установите флажок напротив опции Self Shadows в свитке Illumination/Shading Para-meters. В группе настроек Shading щелкните по цвету Ambient Color, вызвав тем самым окно с одноименным названием. Наведите курсор на первый маркер и щелкните по нему правой кнопкой мыши. В появившемся контекстном меню выберите строку Key Color. В палитре Color Selector: Key Color установите темно-коричневый цвет.
Перейдите в свиток Color Parameters, установите переключатель в положение Color 1, щелкните правой кнопкой мыши в поле Color и выберите строку Keyless Mode. После этого щелкните в поле левой кнопкой и в появившемся окне Color Selector: Key Color выберите темно-серый цвет.
Поскольку эффект взрыва представляет собой анимационную сцену, необходимо каким-то образом управлять свойствами частиц в каждом кадре анимации. Настройки атмосферного эффекта Afterburn позволяют определить зависимость цвета частиц от плотности их размещения (Density) или от их расстояния до центра (Distance). Для нашей сцены выберите первый вариант и в нижней части свитка Color Parameters нажмите кнопку Density. Перейдите в свиток настроек Particle Shape/Ani-mation Parameters и установите минимальное значение радиуса сфер (Sph.Radius) равным 13, а максимальное — 82.
Одна из отличительных особенностей плагина — возможность анимации любых настроек при помощи AFC (Animation Flow Curves — анимационные потоковые кривые). Все параметры в свитках AfterBurn задаются двумя значениями: минимальным (Low Value) и максимальным (High Value). Между ними вы заметите кнопку с аббревиатурой AFC, при нажатии на которую появляется окно с графиком, показывающим зависимость значения параметра настройки от времени. Теперь вы можете самостоятельно отметить на кривой контрольные точки и перемещать их по своему усмотрению, тем самым изменяя форму графика и характеристику частиц.
Чтобы активизировать функцию анимирования параметров при помощи кривых, щелкните по кнопке AFC правой кнопкой мыши и в контекстном меню выберите строку Enable. При включении функции AFC вы увидите, что рисунок на кнопке изменится.
Перейдите в группу настроек Rotation и для каждой из осей включите функцию AFC. Установите максимальные значения (High Value) для каждой из осей: X=138, Y=82, Z=92. Величину разброса параметров (Var.%) для каждой из осей установите равной 13.
Перейдите в свиток настроек Noise Shape Parameters. В списке Type установите тип шума Smoke и нажмите кнопку Fireball. Нажмите кнопку Interactive Update. Переместитесь в свиток настроек Noise Animation Parameters. Активизируйте функцию AFC параметра Density, выберите максимальное значение равным нулю и при помощи кривой в окне AFC Density установите характер изменения плотности. Для этого щелкните мышью приблизительно в центре кривой, создав тем самым на ней контрольную точку. Правой кнопкой мыши вызовите контекстное меню и выберите в нем тип излома Bezier. Изменив угол наклона касательной в точке, придайте кривой такую форму, как на рис. 1. Установите минимальные значения Noise Level = 4,3, Noise Size = 25, Hi Threshold = 0,84, Lo Threshold = 0,18 и активизируйте функцию AFC для параметра Phase. Установите максимальное значение Phase = 26.
Создайте в сцене еще один объект — вспомогательный объект Afterburn. Для этого перейдите на вкладку Create в категорию Helpers, выберите в списке строку Afterburn Daemons и нажмите кнопку Explode. Откройте окно Environment And Effects и добавьте новый объект в список Source Particles/Daemons при помощи кнопки Pick Particles/Daemons. Выделите его в этом списке и нажмите кнопку Edit Particles/Daemons. При этом на командной панели появятся настройки созданного только что объекта. Перейдите в свиток Parameters объекта Explode01 и щелкните в поле Color. В появившемся окне Color нужно установить при помощи маркеров определенный порядок градиентного перехода, который будет характеризовать цвет взрывного эффекта. Задайте крайним ключевым маркерам черный цвет, после чего создайте несколько маркеров таким образом, чтобы градиентный переход осуществлялся от черного цвета к красному, от красного — к оранжевому, от оранжевого — к белому и в обратном порядке до черного. После установки градиентного перехода цвета активизируйте функцию AFC для параметра, определяющего цвет на выбранной градиентной карте с течением времени (Color Key Shift With Age) и установите его максимальное значение 0,4. Активизируйте функцию AFC для значения яркости градиента (Multiplier) и установите его минимальное значение 40, а максимальное — 0,9. В группе настроек Pertubation установите значения параметров Scale = 16, Amount = 0,9, Levels = 4,5. В группе настроек Color Blending выберите в списке значение Multiply.
Осталось только просчитать анимацию и подкорректировать параметры в зависимости от расположения объекта в сцене. В результате должен получиться реалистичный взрыв, как на рис. 2.
Сергей и Марина Бондаренко, blackmore_s_night@yahoo.com
Компьютерная газета. Статья была опубликована в номере 17 за 2004 год в рубрике soft :: графика