28.10.2019

Как правильно установить сетевой адаптер. Какой драйвер нужен для сетевой карты (Ethernet-контроллера)? Загрузка и установка. Создание резервной копии


Создание трехмерной анимации - это интересный, но в то же время трудоемкий процесс. Анимировать в трехмерной сцене можно все - от источников света и камер, до любых объектов и эффектов. Каждая создаваемая в программе анимация использует так называемые ключевые кадры, которые содержат информацию обо всех параметрах анимации.

В 3ds max 7 можно анимировать любые характеристики всех объектов: примитивов, источников света, камер, вспомогательных объектов и др. Задавая значения параметров объектов в ключевых кадрах, вы можете сделать так, чтобы объекты перемещались в сцене, изменяли текстуру, увеличивались или уменьшались в размерах и т. д. Анимированная камера позволяет добиться эффекта присутствия в сцене и получить вид, раскрывающийся перед глазами персонажа.

Подробнее о виртуальных камерах читайте в гл. 6.

Простейший тип анимации - перемещение объектов в трехмерной сцене. При этом изменяющимся параметром являются координаты положения объекта. Их необязательно задавать вручную. При включенном режиме автоматического создания ключевых кадров 3ds max 7 автоматически фиксирует параметры объекта в текущем ключевом кадре. Например, передвинув в окне проекции на 48 кадре трехмерное тело, вы укажете программе конечные координаты модели.

Анимационные эффекты могут быть самыми разнообразными: игра теней и света, движение объектов в виртуальном пространстве, анимированные эффекты постобработки, деформирующаяся поверхность и т. д.

Ключевые кадры

Задолго до появления трехмерной графики существовала кукольная анимация. Делалась она так: снимался один кадр с мультипликационным героем, затем, например, руку персонажа передвигали на очень небольшое расстояние и опять снимали один кадр. Вся работа состояла в том, чтобы снять на пленку все положения руки. В компьютерной графике все гораздо проще. Аниматор задает в программе только два положения руки - верхнее и нижнее, а все промежуточные положения просчитываются компьютером. Кадры, которые фиксируют начальное и конечное положение тела, называются ключевыми. Ключевые кадры управляют всеми параметрами объекта, в том числе и текстурами, например, при помощи двух ключевых кадров можно сделать так, чтобы бронзовая статуэтка плавно превратилась в стеклянную.

Таким образом, для создания анимации в 3ds max 7 достаточно указать значения параметров в ключевых точках. Программа просчитает изменение параметров от одного ключевого кадра к другому и автоматически визуализирует кадры, не являющиеся ключевыми. Например, чтобы анимировать движение примитива в окне проекции, достаточно переключиться в режим создания ключевых кадров и указать начальное и конечное положение объекта. При этом анимированными параметрами являются координаты объекта. Аналогичным образом можно создавать анимированные атмосферные эффекты, деформацию объекта, изменяющиеся во времени текстуры и т. д., указывая в настройках объектов или эффектов ключевые значения параметров.

Режим создания ключевых кадров включается при помощи кнопки Auto Key (Автоключ), расположенной под шкалой анимации (рис. 4.1). Любое изменение параметра сцены в текущем кадре запоминается, и на шкале анимации появляется метка-маркер ключевого кадра. Для перемещения между ключевыми кадрами анимации используется кнопка Key Mode Toggle (Переключение между ключевыми кадрами) Ключевыми кадрами можно управлять - изменять их положение, удалять, назначать группам объектов, корректировать параметры и т. д.

Рис. 4.1. Кнопки управления анимацией

ПРИМЕЧАНИЕ

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

Окно Time Configuration (Конфигурация времени)

По умолчанию продолжительность создаваемой в 3ds max 7 анимации равна 101 кадру при формате создаваемого видео NTSC (29,97 кадров в секунду). При таких настройках можно создать анимацию продолжительностью около трех секунд В процессе работы может понадобиться изменить эти и другие настройки анимации.

Чтобы установить параметры отображения анимации в окне проекции, используйте диалоговое окно Time Configuration (Конфигурация времени), которое вызывается при помощи одноименной кнопки, расположенной под кнопками управления анимацией (рис. 4.2).

Рис. 4.2. Кнопка Time Configuration (Конфигурация времени)

В окне Time Configuration (Конфигурация времени) (рис. 4.3) можно установить следующие параметры: формат видео (Pal/NTSC), количество кадров в секунду (FPS), способ отображения информации о времени на ползунке анимации, время начала и конца анимации, продолжительность анимации и др.

Рис. 4.3. Диалоговое окно Time Configuration (Конфигурация времени)

ПРИМЕЧАНИЕ

Пример создания анимационной сцены в 3ds max рассмотрен в разд. «Урок 7. Создание простейшей анимации» данной главы.

Контроллеры анимации

В реальной жизни характер движения объектов и изменения каких-либо действий могут быть различными. Чтобы вам было понятнее, что имеется в виду, приведем следующий пример: представьте простую ситуацию, когда электрическая лампочка гаснет и загорается снова. Это несложное действие, однако, может происходить совершенно по-разному. Лампочка может плавно потухать до тех пор, пока перестанет излучать свет (вспомните освещение в театре), а затем так же плавно накаляться. В другом случае лампочка может потухнуть резко и так же резко зажечься вновь или плавно погаснуть и резко загореться. Как видите, существует большое количество вариантов того, как может происходить данное действие. Если создать подобную трехмерную сцену, то анимированным параметром будет яркость источника света.

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

Программа 3ds max 7 содержит так называемые контроллеры анимации, с помощью которых разработчик трехмерной графики может гибко управлять изменением анимированного параметра объектов.

Контроллеры анимации представляют собой заготовки зависимостей, согласно которым могут изменяться параметры. Задать характер протекания анимации можно двумя способами: при помощи окна Track View (Редактор треков), а также перейдя на вкладку Motion (Движение) на командной панели. В 3ds max 7 имеется семь основных заготовок, каждая из которых изменяет значение анимированного параметра следующим образом:

  • Smooth (Сглаженная) - плавно, данный тип функции выбран по умолчанию;
  • Step (Ступенчатая) - по ступенчатому графику;
  • Slow (Медленная) - с замедлением;
  • Fast (Быстрая) - с ускорением;
  • Linear (Линейная) - линейно;
  • Custom (Пользовательская) - позволяет установить форму кривой зависимости вручную;
  • Custom - Locked Handles (Пользовательская с закрепленными маркерами) - позволяет установить форму кривой зависимости вручную, с заблокированным положением маркеров.

ПРИМЕЧАНИЕ

Пример использования контроллеров в анимационной сцене рассмотрен в разд. «Урок 8. Создание анимированного вентилятора» данной главы.

Окно Parameter Collector (Коллектор параметров)

Для более удобного создания анимации в 3ds max 7 появилась новое окно - Parameter Collector (Коллектор параметров). Благодаря ему вы сможете гораздо быстрее управлять свойствами объектов.

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

В окно Parameter Collector (Коллектор параметров) можно вынести все настройки, необходимые вам для работы с объектами сцены. Это могут быть как параметры объектов, так и настройки примененных к ним модификаторов, материалов и т. д.

Для вызова окна Parameter Collector (Коллектор параметров) выполните команду Animation > Parameter Collector (Анимация > Коллектор параметров) (рис. 4.4) или воспользуйтесь сочетанием клавиш Alt+2.

В появившемся окне Parameter Collector (Коллектор параметров) необходимо нажать кнопку Add to New Rollout (Добавить в новый свиток) (рис. 4.5), после чего на экране возникнет окно Track View Pick (Окно треков) (рис. 4.6). В нем в виде иерархичного списка отображены все объекты сцены и их параметры.

Рис. 4.4. Выполнение команды Animation > Parameter Collector (Анимация > Коллектор параметров)

Рис. 4.5. Кнопка Add to New Rollout (Добавить в новый свиток) в окне Parameter Collector (Коллектор параметров)

В этом окне нужно выбрать необходимый параметр и нажать кнопку О К - параметр перенесется в окно Parameter Collector (Коллектор параметров). Как показано на рис. 4.7, в одном свитке могут быть собраны самые разные параметры: настройки размера объекта, его положения в пространстве и т. д.

Настройки, занесенные в отдельный свиток, можно изменять одновременно. Для этого необходимо нажать на одну из кнопок выбора параметра, расположенных рядом с каждой настройкой (рис. 4.8). После этого кнопка станет желтой.

В окне Parameter Collector (Коллектор параметров) можно создавать любое количество свитков с настройками (естественно, в разумных переделах), после чего объединять их в группы. Для формирования группы необходимо дать ей название, набрав его в соответствующем поле и завершив ввод с помощью клавиши Enter . При этом станет активной кнопка New Collection (Новая группа), нажав которую можно перейти к созданию следующей группы. Переключаться между группами параметров можно при помощи раскрывающегося списка (рис. 4.9).

Рис. 4.6. Окно Track View Pick (Окно треков)

Рис. 4.7. Окно Parameter Collector (Коллектор параметров) с добавленными параметрами

Рис. 4.8. Кнопка выбора параметра

Рис. 4.9. Список переключения между группами параметров

Окно Parameter Editor (Редактор параметров)

Еще одно окно, с помощью которого можно сделать удобнее управление объектами сцены, - Parameter Editor (Редактор параметров). Это еще одно нововведение 3ds max 7. При помощи данного окна можно составлять группы параметров, которыми характеризуется тот или иной объект в сцене, и добавлять их к настройкам объекта или примененного к нему модификатора на командной панели, а также к настройкам используемого материала.

Для вызова окна Parameter Editor (Редактор параметров) выполните команду Animation > Parameter Editor (Анимация > Редактор параметров) (рис. 4.10) или воспользуйтесь сочетанием клавиш Alt+1.

Рис. 4.10. Выполнение команды Animation > Parameter Editor (Анимация > Редактор параметров)

Рис. 4.11. Окно Parameter Editor (Редактор параметров)

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

1. В списке Add to Type (Добавить к типу) появившегося окна Parameter Editor (Редактор параметров) (рис. 4.11) укажите, куда необходимо добавить параметр.

2. Укажите тип параметра в списке Parameter Type (Тип параметра) (рис. 4.12).

3. Укажите тип управления параметром в списке UI Туре (Тип управления). В зависимости от того, какой параметр вы выберете в списке Parameter Type (Тип параметра), доступные варианты управления будут различаться (рис. 4.13).

4. В поле Name (Имя) введите название параметра.

5. Нажмите кнопку Add (Добавить) для добавления параметра.

6. Переключитесь в настройки объекта (модификатора или материала) и убедитесь что параметр добавлен в свиток Custom Attributes (Настройки пользователя) (рис. 4.14).

Рис. 4.12. Список Parameter Type (Тип параметра)

Рис. 4.13. Список UI Туре (Тип управления)

Рис. 4.14. Настройки объекта Torus (Top) после добавления пользовательских параметров

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

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

Как использовать камеру для этих целей, мы сейчас разберем подробнее. Если желаете познакомиться с анимацией на профессиональном уровне, то рекомендуем записаться на . Итак, начинаем.

Для начала нам нужно правильно установить камеру. На примере мы рассмотрим стандартную камеру, встроенную в 3ds max. Она бывает двух основных типов:

  • С целью (Target Camera);
  • Свободная (Free Camera).

Проще и удобнее создавать камеру на виде сверху. Для этого нажимаем на клавишу T (Top). Затем переходим в режим создания камеры (см.рис.ниже) и создаем ее, сразу указав необходимое нам направление. Есть 2 весомых плюса создания камеры на виде сверху:

  • Мы сразу ставим саму камеру и цель камеры туда, куда нужно;
  • Ракурс уже настроен, осталось только поднять камеру на необходимую высоту.

После создания камеры сразу переходим в ее параметры. Здесь нам сразу нужно (при необходимости) отключить цель.

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

Теперь настраиваем угол обзора (FOV). Здесь важно помнить, что слишком меленький FOV сильно ограничит наш обзор и большую часть комнаты мы просто не увидим. И наоборот, слишком большой FOV покажет нам больше пространства, но сильно исказит картинку. Пример тому - дверной глазок . Он искажает изображение за счет специальной линзы, но зато увеличивает обзор и мы можем видеть многое, вплоть до коврика, который лежит возле входной двери. Поэтому я выбрал для себя самый подходящий вариант FOV. Это 60 градусов. Т.е. при создании любого интерьера я сразу ставлю FOV=60. Ниже на скриншоте показан пример слишком маленького, слишком большого и нормального угла обзора камеры FOV.

Следующее, что нам нужно сделать, это перейти на вид спереди или слева, и поднять камеру (и цель, если она есть) на уровень человеческого глаза. Обычно это 1.5-1.7 метров. Здесь нужно смотреть не на рост заказчика, как многие думают, а на высоту потолка и 3d-модели мебели, присутствующие в сцене. Важно установить высоту камеры так, чтобы обзор внизу не перекрывал какой-нибудь диван, а наверху не срезался потолок.

Важно! Для того, чтобы посмотреть границы итоговой картинки (анимации), нужно перейти на вид камеры (клавиша C), включить рамку камеры сочетанием клавиш Shift + F. Рамка покажет вам, что именно захватит ваша камера при . Выключить рамку можно этими же клавишами.

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

Анимация движения камеры

Теперь переходим к созданию анимации камеры. Для этого нам нужно выделить саму камеру на виде сверху и выбрать кадр. Внизу есть ползунок времени. Хватаем его и передвигаем вправо. Выбираем, например, 10 кадр.

Теперь нажимаем кнопку Auto Key. Она должна стать красного цвета.

Кнопка Auto Key

Затем перемещаем камеру туда, где она должна оказаться после завершения движения. В данном случае мы переместили ее в верхний правый угол экрана. Как мы видим на скриншоте ниже, после перемещения нами камеры внизу на шкале времени появились 2 ключа (маленьких красных квадрата), на 0 кадре и на 10-м.

Сейчас очень важно отключить кнопку AutoKey. Отключаем ее (1). А затем передвигаем ползунок(2) на кадр 0 и включаем Play (3), чтобы посмотреть, что у нас получилось.

Если камера движется в промежутке с 0 по 10 кадр, то мы добились того, чего хотели. Теперь вы можете перемещать эти ключи камеры (красные квадраты) в шкале анимации на разные моменты времени. Например, если второй ключ мы переместим на кадр 80, то камера будет двигаться до точки Б дольше, т.к. ей на это дано больше времени. Первый кадр мы тоже можем сместить, например, на 20. Попробуйте и сами увидите, что анимация начнется именно с 20 кадра, а не сначала. С 0 по 20 кадры будет тишина.

Если вы хотите поменять расположение камеры только в точке Б, то здесь нужно обязательно нажать кнопку Auto Key, передвинуть ползунок времени на 2й ключ, и только тогда можно менять положение, т.е. двигать камеру. Если забудете включить Auto Key, то точка А сместится тоже, а вы это увидите только при воспроизведении анимации. После окончания операции обязательно отключите Auto Key!

Можно также:

  • менять ключи на шкале времени местами, например, точку Б сделать на 20 кадре, а точку А — на 80;
  • добавлять новые ключи, но только при включенном Auto Key;
  • не только перемещать камеру из точки А в точку Б, но и вращать, менять ее FOV и т.д.

Слежение камеры за объектом

Я создал простейшую 3d-модель автомобиля. Можно было, конечно, загрузить 3d-модель получше, с нормальными , но зачем отвлекать внимание, ведь речь не о качестве модели. Наша задача — анимация. Сейчас мы заставим наш автомобиль двигаться из точки А в точку Б. Для этого проделываем те же операции, что и выше:

  • выделяем объект;
  • включаем Auto Key;
  • перемещаем кадр на 100;
  • перемещаем объект(автомобиль) в точку прибытия Б;
  • выключаем Auto Key;
  • проверяем анимацию, нажав Play.

Теперь нам нужно создать камеру с целью на виде сверху. Цель располагаем близко или на автомобиле.

Т.к. объект-автомобиль у нас анимирован, нам нужно прикрепить к нему цель камеры. Для этого используем инструмент Select and Link (англ: выбрать и связать).

Можем перейти на перспективу P или на вид камеры C, чтобы запустить и протестировать анимацию.

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

Так же используются дрожание цели , ведь автомобиль едет идеально ровно и человек просто физически не сможет идеально держать камеру без малейших отклонений от цели съемки. Здесь выбор за вами. Если хотите реалистично, то нужно поработать и довести до ума каждую мелочь, начиная от , заканчивая попаданием капель на объектив камеры, когда машина проносится мимо и колесо попадает в лужу:). В общем, идей можно придумать множество. Все в ваших руках!


Глава 4

Анимация в среде 3ds Max 2008

Анимация частиц


Анимацию можно представить как последовательность сменяющих друг друга изображений. В среде 3ds Max 2008 практически каждый объект и почти все его параметры можно анимировать. Анимации могут подвергаться не только объекты и их параметры, но и модификаторы, материалы, контроллеры и многое другое. В данной главе вы познакомитесь с основами создания анимации и инструментами управления ее параметрами.

Примечание

Из видеоуроке «Урок 25. Анимация в 3ds Max 2008», который находится на DVD, прилагаемом к книге, вы узнаете основные сведения об анимации в 3ds Max 2008.

Анимация с использованием ключевых кадров

Анимация с использованием ключевых кадров является базовой. Она позволяет понять принцип работы всего механизма создания движущихся образов. Как уже говорилось выше, почти любой параметр объекта (объектами в 3ds Max являются не только параметрические объекты, но и камеры, источники света, модификаторы и даже материалы), имеющий численное значение, можно сделать ключевым, то есть анимировать.

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

Рассмотрим некоторые термины, которыми мы будем оперировать в дальнейшем.

Ключ (Key) – маркер, задающий значения анимируемых параметров в определенный момент.

Ключевой кадр (Keyframe) – кадр, содержащий ключ анимации.

Автоключ (AutoKey) – функция, отслеживающая изменения анимируемых параметров объекта и позволяющая автоматически создавать ключевой кадр.

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

Строка треков (Track Bar) – элемент интерфейса, позволяющий получить быстрый доступ к ключам выделенного объекта.

Кривая функции (Function Curve), или анимационная кривая, – графически отображает значения анимации в ключах и интерполированные значения между ключами. Настраивается редактированием положения манипуляторов Безье в окне Track View – Curve Editor (Просмотр треков – редактор кривых).

Прежде чем вы выполните свою первую анимацию, давайте рассмотрим инструменты создания анимации методом ключевых кадров и управления анимацией, представленные в программе 3ds Max.

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

Go to Start (Перейти в начало) – делает первый кадр анимации текущим.

Previous Frame (Предыдущий кадр) – выполняет переход к предыдущему кадру анимации.

Play Animation (Воспроизвести анимацию) – запускает воспроизведение анимации в активном окне проекции. После запуска анимации кнопка меняется на Stop Animation (Остановить анимацию), щелчок на которой прекращает воспроизведение анимации.

Next Frame (Следующий кадр) – выполняет переход к следущему кадру анимации.

Go to End (Перейти в конец) – делает последний кадр анимации текущим.

Key Mode Toggle (Режим ключей) – переходит в режим отслеживания ключей анимации. При этом кнопки Previous Frame (Предыдущий кадр) и Next Frame (Следующий кадр) изменяются на Previous Key (Предыдущий ключ) и Next Key (Следующий ключ). Щелчок на одной из этих кнопок позволяет перейти к следующему или предыдущему ключу анимации выделенного объекта.

Current Frame (Текущий кадр) – отображает номер текущего кадра. Кроме того, если в поле счетчика ввести требуемый номер кадра или время, то можно быстро перейти к этому кадру.

Time Configuration (Настройка временных интервалов) – вызывает одноименное окно, позволяющее задавать временные диапазоны, характер отображения времени, а также частоту кадров в секунду (fps).

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

Set Keys (Установить ключи) – создает ключ анимации для выделенного объекта в текущем кадре. В отличие от автоматического создания ключей с использованием кнопки Auto Key (Автоключ), вы можете контролировать то, какие именно ключи буду созданы (это задается при помощи фильтра Set Key Filters (Установить фильтры ключа)). Для использования этого режима должна быть нажата кнопка Toggle Set Key Mode (Переключатель режима установки ключей).

Toggle Auto Key Mode (Переключатель режима автоматической записи ключей) – включает/выключает режим автоматического создания ключей анимации для выделенного объекта сцены в текущем кадре. В этом режиме записываются любые трансформации (перемещение, поворот, масштабирование), а также параметры, которые в принципе можно анимировать. При нажатии кнопки автоматической записи ключей будьте внимательны, так как можно случайно записать ненужные ключи. Не забывайте сразу же после записи необходимой анимации отключать режим автоматической записи ключей, повторно нажав кнопку Toggle Auto Key Mode (Переключатель режима автоматической записи ключей).

Selection Sets drop-down list (Список именованных выделений) – раскрывает список с именованными выделениями, созданными при помощи Named Selection Sets (Название выделенной области), к которым будут применяться ключи анимации. По умолчанию анимация применяется только к выделенным объектам.

Toggle Set Key Mode (Переключатель режима установки ключей) – включает либо выключает режим, при котором будут записываться только те ключи, которые указаны в окне Set Key Filters (Установить фильтры ключа).

Default In/Out Tangents for New Keys (Исходный тип касательных) – задает исходный тип касательных в ключах, которые строятся при помощи автоматической записи ключей анимации.

Open Filters Dialog (Открыть окно фильтров ключа) – щелчок на этой кнопке вызывает окно Set Key Filters (Установить фильтры ключа), позволяющее можно включить или выключить треки, которые будут анимироваться.

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

1. В окне проекции Top (Сверху) создайте параметрический объект Plane (Плоскость), для чего выполните команду главного меню Create > Standard Primitives > Plane (Создание > Простые примитивы > Плоскость).

2. Перейдите на вкладку Modify Parameters (Параметры) установите значение параметра Length (Длина) равным 120, а Width (Ширина) – 500.

3. Используя окно проекции Top (Сверху), создайте в левой части плоскости объект Sphere (Сфера), для чего выполните команду главного меню Create > Standard Primitives > Sphere (Создание > Простые примитивы > Сфера).

4. Перейдите на вкладку Modify (Изменение) командной панели и в свитке Parameters (Параметры) настроек сферы задайте параметру Radius (Радиус) значение, равное 10, и установите флажок Base To Pivot (Точка опоры внизу).

5. Щелкните правой кнопкой мыши на значке Select and Move (Выделить и переместить)

на панели инструментов и в области Absolute:World (Абсолютные: глобальные) открывшегося окна Move Transform Type-In (Ввод данных преобразования перемещения) задайте параметру Z значение, равное 100 (рис. 4.1).

Рис. 4.1. Окно Move Transform Type-In (Ввод данных преобразования перемещения) с параметрами положения сферы


6. Активизируйте запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ), расположенной в правой нижней части окна программы. В результате кнопка выделится цветом

указывая на то, что находится в активном состоянии.

7. Передвиньте ползунок таймера анимации на 20 кадр.

8. Снова откройте окно Move Transform Type-In (Ввод данных преобразования перемещения) щелкнув правой кнопкой мыши на кнопке Select and Move (Выделить и переместить)

на панели инструментов, и параметру Z области Absolute:World (Абсолютные: глобальные) задайте новое значение, равное 0. В результате в строке треков появится два ключевых кадра: один в нулевом, другой в 20 кадре активного временного сегмента.

9. Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

10. Нажмите кнопку Play Animation (Воспроизвести анимацию)

чтобы увидеть выполненную анимацию в активном окне проекции.

После выполнения вышеописанных действий вы увидите, как сфера начнет падать по прямой с высоты 100 мм, начиная с нулевого кадра (активный кадр по умолчанию) до 20 кадра, то есть до нулевого значения по вертикали (по оси Z ) (рис. 4.2). Такое движение обусловлено автоматически созданными ключевыми кадрами и расчетом интерполяции движения между ними.


Рис. 4.2. Положение объекта Sphere (Сфера) в 10 кадре анимации и траектория его движения


Созданные ключи анимации можно редактировать: изменять анимированные настройки или изменять положение ключей в строке треков. Проще всего редактировать с помощью контекстного меню, которое можно вызвать щелчком правой кнопки мыши на ключе анимации (рис. 4.3).

Рис. 4.3. Контекстное меню, вызванное щелчком правой кнопки мыши на ключе в 20 кадре анимации


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

При автоматическом создании ключей анимации программа использует для интерполяции в начальном и конечном кадрах значения Безье. На практике это выглядит как плавное начало движения и постепенное затухание к концу анимации. Часто такие значения подходят и их можно оставлять, как есть. Однако если мы, например, анимируем подброшенный вверх мячик то, поднимаясь вверх, он будет замедлять движение, пока не остановится, а затем начнет падать, постепенно ускоряясь, пока не достигнет земли. Представим, что описанная выше сфера – это тот самый мяч. В этом случае необходимо скорректировать функциональную кривую анимации так, чтобы падая, мяч приобретал ускорение. Для этого нужно отредактировать 20 ключ анимации следующим образом.

1. Щелкните правой кнопкой мыши на 20 ключе анимации и в появившемся контекстном меню выберите строку Sphere01: Z Position

2. В одноименном открывшемся окне щелкните на кнопке In (Вход) и выберите из раскрывшегося списка быстрое управление сглаживанием сегментов сплайна Безье

Рис. 4.4. Выбор кнопки быстрого управления функциональной кривой анимации


3. Протестируйте выполненную анимацию, щелкнув на кнопке Play Animation (Воспроизвести анимацию)


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

При реальном столкновении с плоскостью мяч деформируется, а затем, распрямляясь, отскочит вверх. Чтобы показать деформацию мяча, воспользуемся модификатором FFD 2 ?2 ?2 (Произвольная деформация 2?2?2), анимировав его контрольные точки (Control Points). Для этого выполните следующие действия.

1. В любом из окон проекций выделите построенную ранее сферу.

2. Примените к ней модификатор FFD 2 ?2 ?2 (Произвольная деформация 2?2?2), выполнив команду главного меню Modifiers > Free Form Deformers > FFD 2 ?2 ?2 (Модификаторы > Произвольные деформации > Произвольная деформация 2?2?2).

3. Перейдите на вкладку Modify (Изменение) командной панели и в стеке модификаторов щелкните на плюсике рядом со строкой FFD 2 ?2 ?2 (Произвольная деформация 2?2?2) для доступа к уровню подобъектов. Активизируйте строку Control Points (Контрольные точки) (рис. 4.5).

Рис. 4.5. Стек модификаторов объекта Sphere01


4. Активизируйте запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ)


5. Передвиньте ползунок таймера анимации на 22 кадр.

6. На главной панели инструментов активизируйте инструмент перемещения, щелкнув на значке Select and Move (Выделить и переместить)


7. В окне проекции Front (Спереди) выделите верхний ряд контрольных точек контейнера деформации и переместите их вниз на 3 мм (рис. 4.6).


Рис. 4.6. Сфера, деформированная при помощи контрольных точек модификатора FFD 2?2?2 (Произвольная деформация 2?2?2)


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

Примечание

В реальной жизни форма мяча при столкновении окажется несколько иной. При столкновении с поверхностью будет больше деформироваться та часть мяча, которая с ней взаимодействует. Чтобы воспроизвести это, нам понадобилось бы строить дополнительные ряды контрольных точек или использовать плавное выделение (Soft Selection) подобъектов сферы. Однако мы рассматриваем создание простой анимации и не ставим такой задачи. При желании вы можете повысить реалистичность анимации, воспользовавшись модификатором FFD (Box) (Произвольно деформируемый контейнер (прямоугольный)).

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

1. Передвиньте ползунок таймера анимации в 18 кадр.

2. Используя инструмент Select and Move (Выделить и переместить) переместите верхний ряд контрольных точек по оси Z вверх на 6 мм.

3. На главной панели инструментов щелкните на значке Select and Uniform Scale

и масштабируйте выделенные контрольные точки на 80 % (рис. 4.7).


Рис. 4.7. Положение контрольных точек в 18 кадре анимации


4. Выключите запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ).

5. Проверьте созданную анимацию. Мяч должен деформироваться, вытягиваясь во время полета, а при падении на плоскость сплющиваться.

6. Чтобы закончить создание полной фазы движения мяча, необходимо выполнить анимацию отскока. Это можно сделать при помощи копирования и редактирования построенных ранее ключей. Выделите в строке треков ключ, расположенный в нулевом кадре, и, удерживая нажатой клавишу Shift , передвиньте ключ в 40 кадр анимации. Таким образом, будет создана копия ключа анимации первого кадра.

Совет

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

Если сейчас воспроизвести анимацию, то можно заметить что мяч в 40 кадре возвращается в исходное положение, соответствующее нулевому кадру, но на участке между 20 и 28 кадром мяч опускается ниже поверхности «земли» (объекта Plane01 ). Такое положение обусловлено применением автоматического сглаживания в ключах анимации, о котором говорилось ранее. Продолжим настройку ключей и скорректируем движение мяча во время отскока.

1. Для настройки параметров ключа в 20 кадре щелкните на нем правой кнопкой мыши и в появившемся контекстном меню (см. рис. 4.3) выберите строку Sphere01: Z Position (Сфера01: положение по оси Z).

2. В появившемся одноименном окне щелкните на кнопке Out (Выход) и выберите из раскрывшегося списка скачкообразное управление сглаживанием сегментов сплайна Безье

Рис. 4.8. Выбор кнопки скачкообразного управления функциональной кривой анимации


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

1. Выделите ключ, расположенный в нулевом кадре, и, удерживая нажатой клавишу Shift , скопируйте его в 24 кадр.

2. Подкорректируйте значение построенного ключа по оси Z . Для этого, используя контекстное меню, откройте окно Sphere01: Z Position (Сфера01: положение по оси Z) и задайте параметру Value (Значение) значение 0.

Совет

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

3. Измените вариант сглаживания функциональной кривой, установив для кнопки In (Вход) скачкообразное управление

а для кнопки Out (Выход) – быстрое управление

сглаживанием сегментов сплайна Безье

Рис. 4.9. Окно Sphere01: Z Position (Сфера01: положение по оси Z) с параметрами ключа в 24 кадре анимации


4. Проверьте выполненную анимацию, запустив ее воспроизведение в активном окне проекции при помощи кнопки Play Animation (Воспроизвести анимацию)



При желании вы можете самостоятельно подкорректировать контрольные точки модификатора FFD 2 ?2 ?2 (Произвольная деформация 2?2?2) после отскока мяча, усилив анимационный эффект. Для этого в 30 кадре анимации выделите нижний ряд контрольных точек и масштабируйте их на 80 %. Выполнив эти действия, не забудьте внести соответствующие изменения в предыдущий и последующий кадры.

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

Создавать и редактировать ключи анимации можно не только автоматически, используя кнопку Auto Key (Автоключ), но и при помощи окна Track View (Просмотр треков). Это окно является основным инструментом редактирования любых параметров ключей анимации. Его можно вызвать командой главного меню Graph Editors > New Track View (Редакторы графов > Новое окно просмотра треков) либо щелчком на значке главной панели инструментов Curve Editor (Open) (Редактор кривых (открыть)). В зависимости от решаемых задач окно Track View (Просмотр треков) может быть представлено в двух режимах: Dope Sheet (Таблица структуры) и Curve Editor (Редактор кривых). Окно Track View – Dope Sheet (Просмотр треков – таблица структуры), показанное на рис. 4.10, разделено на две части: в левой расположен иерархический список анимируемых объектов вместе с их параметрами, а в правой можно редактировать треки.


Рис. 4.10. Окно Track View – Dope Sheet (Просмотр треков – таблица структуры)


Окно Track View – Dope Sheet (Просмотр треков – таблица структуры) имеет два основных режима редактирования анимации: Edit Keys (Редактирование ключей) и Edit Range (Редактирование диапазонов). На рис. 4.10 окно Track View – Dope Sheet (Просмотр треков – таблица структуры) представлено в режиме Edit Keys (Редактирование ключей).

Рассмотрим элементы интерфейса окна Track View (Просмотр треков), общие для каждого из режимов редактирования.

Прежде всего, обратимся к иерархическому списку объектов сцены. Корневым объектом этого списка является World (Мир), которому подчиняются следующие ветви.

Sound (Звук) – содержит данные, связанные со звуком; доступны два типа звуков: метроном и аудиофайл формата WAV.

Video Post (Видеомонтаж) – позволяет управлять анимированными параметрами модуля Video Post (Видеомонтаж).

Global Tracks (Общие треки) – треки этой ветви позволяют задавать параметры, общие для объектов сцены.

Biped (Двуногий) – дает возможность настраивать ключевые кадры, относящиеся к двуногому существу, редактировать следы двуногого и уточнять периоды свободного положения.

Anim Layer Control Manager (Управление анимированными слоями) – ветвь, позволяющая управлять анимированными слоями, добавляемыми поверх оригинальной анимации.

Environment (Внешняя среда) – ветвь с элементами анимации, ассоциированными с внешней средой.

Render Effects (Эффекты визуализации) – содержит треки для эффектов, добавленных в сцену при помощи команды Rendering > Effects (Визуализация > Эффекты). После добавления эффектов визуализации можно использовать данные треки для анимации таких параметров, как цвет или размер области свечения.

Render Elements (Визуализация элементов) – показывает то, какие дополнительные элементы выбраны с использованием вкладки Render Elements (Визуализация элементов) окна Render Scene (Визуализация сцены).

Renderer (Визуализатор) – позволяет анимировать параметры в настройках визуализатора. Например, вы можете анимировать параметр сглаживания текстуры.

Global Shadow Parameters (Общие параметры теней) – содержит параметры, общие для источников света, отбрасывающих тени.

Scene Materials (Материалы сцены) – включает в себя параметры всех материалов, используемых в сцене.

Medit Materials (Материалы редактора) – содержит параметры 24 материалов, представленных в окне редактора материалов.

Objects (Объекты) – включает в себя сцены и их анимируемые параметры. Данная ветвь показывает иерархию связей, подобно окну Select Objects (Выделить объекты).

В верхней части окна Track View (Просмотр треков) располагается панель инструментов с кнопками управления и настройки ключей анимации. В зависимости от режима отображения на панели могут размещаться различные наборы кнопок. Общими для всех режимов являются следующие кнопки.

Filters (Фильтры) – открывает одноименное окно для выбора объектов, которые будут отображаться в окне просмотра треков.

Move Keys (Переместить ключи) – перемещает выбранный ключ (или ключи) во времени. Если передвигать ключ с нажатой клавишей Shift , то он будет скопирован.

Slide Keys (Переместить ключи) – перемещает во времени выбранные ключи, а также ключи, которые расположены со стороны направления смещения, то есть при этом сохраняются расстояния между ключами.

Add Keys (Добавить ключи) – добавляет ключи анимации к любому треку.

Scale Keys (Масштабировать ключи) – пропорционально масштабирует время, относящееся к выбранным ключам анимации относительно текущего кадра анимации.

Lock Selection (Блокировать ключи) – блокирует выбранные ключи для последующей работы с выделением. Аналогично действию клавиши Пробел для объектов сцены.

Snap Frames (Привязать к кадру) – в процессе редактирования треков привязывает ключи анимации к отдельным кадрам.

Show Keyable Icons (Показать анимацию значком) – в окне иерархического списка отмечает анимированные параметры значком с изображением ключа.

В нижней части окна диалога появились три новые кнопки, относящиеся к выбору объектов для отображения.

Filter – Selected Tracks Toggle (Фильтр – переключатель выделенных треков) – позволяет отображать только те пункты иерархического списка, которые перед нажатием данной кнопки были выделены.

Filter – Selected Objects Toggle (Фильтр – переключатель выделенных объектов) – показывает только те пункты иерархического списка, которые относятся к выделенным объектам сцены.

Filter – Animated Tracks Toggle (Фильтр – переключатель анимированных треков) – отображаются только те треки, которые содержат анимацию.

Дополнительными кнопками режима Dope Sheet (Таблица структуры) являются следующие.

Edit Keys (Редактировать ключи) – включает режим редактирования ключей с использованием числовых значений или положения этих ключей на шкале времени.

Edit Ranges (Редактировать диапазоны) – активизирует режим правки диапазонов, позволяющий быстрое редактирование диапазона действия, который ограничен белыми маркерами.

Select Time (Выделить временной диапазон) – включает режим выделения временного сегмента на текущем треке.

Delete Time (Удалить временной диапазон) – удаляет выделенный временной диапазон и все ключи, относящиеся к нему.

Reverse Time (Обратить время) – изменяет порядок следования выделенных ключей на противоположный.

Scale Time (Масштабировать временной диапазон) – позволяет пропорционально масштабировать выделенный временной диапазон.

Insert Time (Вставить временной диапазон) – дает возможность вставить временной интервал в текущий трек.

Cut Time (Вырезать диапазон) – вырезает из текущего трека временной диапазон и помещает его в буфер обмена. Временной диапазон и все ключи, находящиеся внутри него, удаляются из текущего трека.

Copy Time (Копировать диапазон) – копирует выделенный диапазон текущего трека в буфер обмена для последующей вставки в текущий или любой другой трек анимации.

Paste Time (Вставить диапазон) – позволяет вставлять вырезанный или скопированный диапазон в другое место текущего трека или в другой трек.

Modify Subtree (Редактировать поддерево) – включает режим одновременного редактирования объекта сцены и всех связанных с ним элементов, которые расположены на более низких уровнях иерархического списка.

Modify Child Keys (Редактировать дочерние ключи) – аналогична Modify Subtree (Редактировать поддерево), с той разницей, что редактирование распространяется только на элементы сцены, связанные с выделенным объектом.

Рассмотрим дополнительные кнопки окна Curve Editor (Редактор кривых) (рис. 4.11).


Рис. 4.11. Окно Track View – Curve Editor (Просмотр треков – редактор кривых)


Scale Values (Масштабировать значения) – включает режим изменения значений выделенных ключей без изменения их положения на временной шкале.

Draw Curves (Рисовать кривые) – позволяет рисовать новые или редактировать построенные ранее кривые анимации.

Reduce Keys (Уменьшить количество ключей) – позволяет уменьшить количество ключей в выделенном сегменте, по возможности сохраняя характер анимации. Чаще всего используется после применения инструмента Draw Curves (Рисовать кривые) для оптимизации кривой.

Set Tangents to Auto (Автоматическая установка касательных) – автоматически устанавливает касательные векторы к функциональной кривой для выделенных ключей анимации.

Set Tangents to Custom (Выборочная установка касательных) – включает режим ручной правки касательных для выбранных ключей. При этом кнопка Show Tangents (Показать касательные) должна быть активной.

Set Tangents to Fast (Установить быстрое управление) – создает ускорение в районе выделенного ключа анимации. В зависимости от выбранного режима, ускорение может быть установлено до, после или на входе и выходе ключевого кадра.

Set Tangents to Slow (Установить медленное управление) – создает замедление в районе выделенного ключа анимации. В зависимости от выбранного режима, замедление может быть установлено до, после или на входе и выходе ключевого кадра.

Set Tangents to Step (Установить скачкообразное управление) – создает скачкообразное изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима, может быть установлено до, после или на входе и выходе ключевого кадра. Применяется для создания постоянного значения анимации от одного кадра до другого.

Set Tangents to Linear (Установить линейное управление) – создает линейное (равномерное) изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима, может быть установлено до, после или на входе и выходе ключевого кадра.

Set Tangents to Smooth (Установить сглаженное управление) – создает сглаженное изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима, замедление может быть установлено до, после или на входе и выходе ключевого кадра. Чаще всего применяется при создании дискретного движения.

Parameter Curve Out-of-Range Types (Типы экстраполяции параметрических кривых) – используется для задания повторения анимации, созданной при помощи ключевых кадров, за пределами диапазона этих ключей. Щелчок на этой кнопке вызывает окно Param Curve Out-of-Range Types (Типы экстраполяции параметрических кривых), показанное на рис. 4.12. Оно предоставляет следующие варианты экстраполяции параметрических кривых.

Рис. 4.12. Окно Param Curve Out-of-Range Types (Типы экстраполяции параметрических кривых)


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

· Cycle (Циклический) – включает повторение анимации в том виде, как она задана функциональной кривой.

· Loop (Периодический) – также задает повторение анимации, но в отличие от предыдущего варианта, используется интерполяция в начале и конце функциональной кривой для получения сглаженного параметра.

· Ping Pong (Зеркальный повтор) – попеременное повторение анимации в прямой и обратной последовательности.

· Linear (Линейный) – продлевает значения анимации в начале и конце функциональной кривой с использованием касательной к кривой в первом и последнем ключах анимации.

· Relative Repeat (Относительный повтор) – повторяет анимацию, заданную функциональной кривой. При этом каждый раз эта кривая смещается на величину значения последнего ключа.

Show All Tangents (Показать все касательные) – включает отображение во всех ключевых кадрах касательных, определяющих форму функциональной кривой.

Show Tangents (Показать касательные) – включает отображение касательных только в выделенных ключевых кадрах.

Lock Tangents (Блокировать касательные) – используется для одновременной манипуляции касательными всех выделенных ключей анимации.

Show Biped Position Curves (Показать положение кривой двуногого) – отображает положение кривых анимации выделенного объекта Biped (Двуногий).

Show Biped Rotation Curves (Показать поворот кривой двуногого) – отображает поворот кривых анимации выделенного объекта Biped (Двуногий).

Show Biped X Curves (Показать кривую X двуногого) – включает/выключает отображение оси X

Show Biped Y Curves (Показать кривую Y двуногого) – включает/выключает отображение оси Y текущей анимации или положения кривой.

Show Biped Z Curves (Показать кривую Z двуногого) – включает/выключает отображение оси Z текущей анимации или положения кривой.

Продолжим создание анимации мяча с помощью рассмотренных выше инструментов окна Track View (Просмотр треков). Вы можете работать со сценой, которую создали сами, или использовать файл ball.max , находящийся в папке Examples\Глава 04\Ball , прилагаемого к книге DVD.

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

1. Откройте окно редактирования кривых, выполнив команду главного меню Graph Editors > Track View – Curve Editor (Редакторы графов > Просмотр треков – редактирование кривых).

2. В окне Track View – Curve Editor Filters (Фильтры)

в результате чего откроется одноименное окно (рис. 4.13).


Рис. 4.13. Окно диалога Filters (Фильтры)


3. В области Show Only (Показывать только) окна Filters (Фильтры) установите флажок Animated Tracks (Анимированные треки), снимите все остальные и нажмите кнопку OK . В результате выполненных действий в окне иерархического списка останутся только анимированные элементы.

4. На панели инструментов окна Track View – Curve Editor (Просмотр треков – редактор кривых) щелкните на кнопке Show Keyable Icons (Показать анимацию значком)

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

5. В окне дерева иерархии щелкните на плюсике, расположенном слева от объектов для раскрытия всего списка и выберите из него все анимированные элементы (рис. 4.14).


Рис. 4.14. Окно Track View – Curve Editor (Просмотр треков – редактор кривых) с выбранными анимированными элементами


6. Щелкните на кнопке Parameter Out-of-Range Curves Types (Типы экстраполяции параметрических кривых)


7. В появившемся окне выбора варианта экстраполяции параметрических кривых щелкните на кнопке со стрелкой, направленной вправо, которая расположена под значком Cycle (Циклический) (рис. 4.15).

Рис. 4.15. Окно Param Curves Out-of-Range Types (Типы экстраполяции параметрических кривых) с заданной циклической интерполяцией


8. Щелкните на кнопке OK для подтверждения выполненных изменений.

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

Использование контроллеров и выражений

Каждый раз, когда вы анимируете объекты сцены, программа 3ds Max сохраняет параметры анимации в контроллерах. Контроллерами называются элементы, хранящие значения анимации и управляющие интерполяций от одного значения анимации к другому. Существует две категории контроллеров.

Базирующиеся на ключах – контроллеры, основанные на ключах анимации. Такие контроллеры воспринимают в качестве ввода значений данные из ключевых кадров, а затем рассчитывают интерполированные значения между ключами анимации. Для этих контроллеров является характерным то, что кривая функции всегда проходит через ключи анимации. Контроллеры могут оказывать влияние на интерполяцию между ключами, но не на сами ключи. Контроллеры, описывающие трансформации на объектном уровне, можно также редактировать в свитке Key Info (Справка о ключах) вкладки Motion (Движение) командной панели.

Параметрические – рассчитывают анимацию на основе уравнения, реализуемого контроллером и основываясь на значениях, которые указаны пользователем. К параметрическим можно отнести контроллеры, ограничивающие движения объектов в пространстве (Constraints (Ограничения)). При помощи контроллеров-ограничителей можно заставить объект следовать по пути или оставаться повернутым к другому объекту.

Программа 3ds Max поддерживает большое количество контроллеров различных типов. Контроллеры одного типа могут иметь несколько разновидностей. Контроллеры можно условно классифицировать по типу возвращаемого ими значения, при этом тип данных контроллера должен соответствовать типу данных параметра объекта. Например, контроллер типа данных Position (Положение) нельзя использовать для параметра поворота или масштаба объекта. Рассмотрим семь типов данных контроллера.

Transform Controller (Контроллер преобразования) – управляет трансформациями перемещения, поворота и масштаба.

Position Controller (Контроллер положения) – влияет на положение объекта, позицию габаритного контейнера модификатора или его центра.

Rotation Controller (Контроллер поворота) – управляет преобразованием поворота объекта или габаритного контейнера модификатора.

Scale Controller (Контроллер масштаба) – влияет на преобразование масштаба объекта или габаритного контейнера модификатора.

Point3 Controller (Трехкомпонентный контроллер) – управляет любым параметром с тремя значениями компонента, такими как цвет материала или координаты точки.

Float Controller (Контроллер с плавающей точкой) – влияет на любой параметр с единственным значением компонента, например угол поворота, ширина объекта, уровень собственного свечения материала и т. п.

Color Controller (Контроллер цвета) – управляет цветом материала.

Контроллеры анимации можно назначать, используя три различных источника: команды главного меню Animation (Анимация), окно Track View (Просмотр треков) или вкладку Motion (Движение) командной панели.

Рассмотрим некоторые контроллеры, которыми оперирует 3ds Max.

Position/Rotation/Scale (PRS) (Положение/поворот/масштаб) – используется по умолчанию для большинства объектов сцены и габаритных контейнеров модификаторов. Его рекомендуется применять для всех универсальных трансформаций.

Audio (Звук) – контроллер управления по звуковой дорожке. Он позволяет анимировать почти любой параметр сцены, конвертируя амплитуду записанного звука в значения анимируемого параметра объекта. Данный контроллер совместим с большинством параметров окна Track View (Просмотр треков), в том числе и с Transform Controller (Контроллер преобразования), Float Controller (Контроллер с плавающей точкой) и Point3 Controller (Трехкомпонентный контроллер).

Bezier (Управление по Безье) – один из самых универсальных контроллеров, доступных в 3ds Max. Он выполняет интерполяцию между ключами анимации, регулируя изменения кривой, проходящей через ключевые точки. Контроллер Bezier (Управление по Безье) используется по умолчанию для большинства параметров. Его рекомендуется применять, когда необходимо иметь полный контроль над интерполяцией функциональной кривой в промежутках между ключами анимации.

Color RGB (Цвет RGB) – разделяет составляющую цвета RGB на три независимых трека. Этот контроллер можно применять для анимации цветовых составляющих материалов либо других компонентов, использующих цвет. После разделения по умолчанию каждому треку назначается контроллер Bezier Float (Управление по Безье с плавающей точкой).

Euler XYZ Rotation (XYZ-поворот по Эйлеру) – составной контроллер, объединяющий отдельные контроллеры, которые имеют значение с плавающей точкой и отписывают поворот относительно одной из осей (X , Y или Z ). Использование данного контроллера не дает такого сглаженного результата, как применение TCB Rotation (TCB-поворот), который использует для управления вращением кватернионовскую математику. Однако в отличие от последнего, Euler XYZ Rotation (XYZ-поворот по Эйлеру) позволяет редактировать функциональные кривые.

Expression (Выражение) – контроллер по алгоритмическому выражению. Он строит функциональную кривую на основе математических выражений, заданных пользователем в окне Expression Controller (Контроллер управления по алгоритмическому выражению) (рис. 4.16). При помощи данного контроллера можно получать данные из других контроллеров, оперировать встроенными функциями и создавать собственные переменные. Контроллер Expression (Выражение) можно применять практически ко всем параметрам 3ds Max, для которых есть возможность анимации.


Рис. 4.16. Окно диалога Expression Controller (Контроллер управления по алгоритмическому выражению)


Linear (Линейное управление) – контроллер линейного управления. Строит функциональную кривую между двумя соседними ключами по прямой линии. Этот контроллер не имеет настроек и использует для интерполяции значения ключевых кадров. Его следует применять, когда необходимо передать движение механизмов или изменение цвета.

Noise (Шум) – генерирует хаотичную анимацию в пределах диапазона кадров. Является параметрическим и не использует ключи анимации. Как только вы назначаете анимированному параметру этот контроллер, он сразу применяется ко всему диапазону текущего временного сегмента. Данный контроллер можно использовать для создания неравномерного движения, пульсирующего фонтана, вибрации объектов и т. п., а также к другим контроллерам для изменения функциональной кривой с учетом среднего значения (рис. 4.17).

Рис. 4.17. Окно диалога контроллера Noise (Зашумление)


List (Управление по списку) – объединяет несколько самостоятельных контроллеров для создания общей анимации. Контроллеры, добавленные в список, выполняются последовательно и по умолчанию имеют вес (значение параметра Weight (Вес)), равный 100. Изменение этого значения влияет на удельный вес данного контроллера в общей анимации. Применяется для создания сложных анимаций.

Script (Управление по коду) – подобно контроллеру Expression (Выражение), основанному на алгоритмическом выражении, отрывает окно для ввода кода на языке MAXScript с последующим расчетом значения и передачи его контроллеру. С помощью контроллера Script (Управление по коду) можно анимировать практически все параметры объекта, даже те, которые не анимируются контроллером Expression (Выражение) (например, вершины полигонального объекта) (рис. 4.18).


Рис. 4.18. Окно диалога Script Controller (Контроллер управления по коду)


Path Constraint (Ограничение по пути) – ограничивает движение объекта по пути, которым является указанный сплайн или усредненное расстояние между несколькими сплайнами. В качестве пути можно использовать сплайн любого типа, при этом сам сплайн может иметь собственную анимацию. Данный контроллер применяется для анимации объектов по сложным траекториям (например, движение автомобиля по дороге).

Position Constraint (Ограничение по положению) – изменяет положение исходного объекта (то есть объект, к которому применен контроллер) относительно целевого. При этом значение параметра Weight (Вес), равное по умолчанию 100, означает, что исходный объект займет положение целевого, а значение 0 – то, что исходный объект останется на месте. Все значения, отличные от 0, заставят объект переместиться в положение, которое равно процентному отношению расстояния между исходным и целевым объектами.

Link Constrain (Ограничение по связи) – применяется для анимации передачи связи от одного целевого объекта другому. Например, что при использовании контроллера Link Constrain (Ограничение по связи) анимированный персонаж может взять рукой чемодан и переместить его в другую руку.

LookAt Constraint (Ограничение по линии взгляда) – используется для ориентации одного объекта относительно другого с таким расчетом, чтобы исходный объект постоянно смотрел на целевой. Действие данного контроллера подобно камере Target Camera (Нацеленная камера), когда она поворачивается вслед за перемещаемой целью.

Итак, мы рассмотрели основные контроллеры анимации, применяемые в 3ds Max. Более подробную информацию о них можно найти в справочной литературе или файле справки приложения.

Продолжим анимировать мяч. Используя контроллер Expression (Выражение), создадим для него поступательное движение и постепенное затухание отскоков.

1. Продолжите выполнение собственной анимации или загрузите с прилагаемого DVD файл ball01.max , находящийся в папке Examples\Глава 04\Ball .

2. Для увеличения общего времени анимации щелкните на кнопке Time Configuration (Настройка временных интервалов)

и в области Animation (Анимация) открывшегося окна задайте параметру End Time (Время окончания) значение, равное 180 (рис. 4.19).

Рис. 4.19. Окно диалога Time Configuration (Настройка временных интервалов)


3. В одном из окон проекций выделите мяч – объект Sphere01 .

4. Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контроллер) выберите строку с именем Position: Position XYZ (Положение: положение по XYZ) (рис. 4.20).

Рис. 4.20. Свиток Assign Controller (Назначить контроллер) объекта Sphere01


5. В свитке Assign Controller (Назначить контроллер) щелкните на одноименной кнопке

в результате чего откроется окно диалога Assign Position Controller (Назначить контроллер положения). В этом окне выберите из списка контроллер Position List (Контроллер положения по списку). После применения этого контроллера в списке контроллеров появится строка Available (Доступный) (рис. 4.21), позволяющая добавлять к списку новые контроллеры.

Рис. 4.21. Свиток Assign Controller (Назначить контроллер) после назначения контроллера Position List (Контроллер положения по списку)


6. Выделите строку Available (Доступный) и щелкните на кнопке Assign Controller (Назначить контроллер)


7. В открывшемся окне Assign Position Controller (Назначить контроллер положения) выберите строку Position Expression (Контроллер положения по выражению). В результате откроется окно Expression Controller (Контроллер управления по алгоритмическому выражению) (см. рис. 4.16).

8. Создайте переменную, которая будет принимать значение положения объекта Sphere01 по оси Z следующим образом:

1) в поле Name (Имя) области Create Variables (Создать переменную) наберите имя создаваемой переменной (например, Zpoz );

2) установите переключатель в положение Scalar (Скалярный) и щелкните на кнопке Create (Создать);

3) в нижней части окна нажмите кнопку Assign to Controller (Назначить контроллеру);

4) в появившемся окне Track View Pick (Выбрать трек) выберите из иерархического списка строку Z Position: Bezier Float (Z-положение: управление по Безье с плавающей точкой), относящуюся к объекту Sphere01 (рис. 4.22).

Рис. 4.22. Выбор строки Z Position: Bezier Float (Z-положение: управление по Безье с плавающей точкой) в окне Track View Pick (Выбрать трек)


9. В поле Expression (Выражение) окна Expression Controller (Контроллер управления по алгоритмическому выражению) вместо , наберите следующее выражение , где F – текущий кадр (функция по умолчанию), 180 – общее количество кадров, а Zpoz – созданная нами переменная.

10. Щелкните на кнопке Evaluate (Оценить) для расчета созданного выражения.

11. Запустите воспроизведение созданной анимации в активном окне проекции, нажав кнопку Play Animation (Воспроизвести анимацию)

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

Вернемся к созданному выражению и разберем его более подробно. По умолчанию выражение в поле Expression (Выражение) представляло собой , что означало изменение параметров X , Y и Z на 0, то есть положение объекта не менялось. Вместо значения 0 по оси X мы задали F , указав, что в каждом последующем кадре анимации это значение будет увеличиваться на 1 и соответствовать номеру текущего кадра. Значение по оси Y не должно меняться, поэтому мы оставили его равным 0 . Для оси Z выражение имеет более сложную структуру. В каждом кадре анимации из положения объекта по оси Z вычитается его текущее значение (Zpoz ), деленное на общее количество кадров. Эта разность умножается на значение текущего кадра для создания динамики уменьшения параметра Z .

Примечание

Для ознакомления с готовой анимацией загрузите файл ball02.max из папки Examples\Глава 04\Ball прилагаемого к книге DVD.

Анимация частиц

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

После создания системы частиц все, что вы можете увидеть в окне проекции, – это габаритный контейнер, который называется Emitter Icon (Значок источника). Он является объектом, который порождает частицы. Созданные системы частиц существуют в сцене в динамике, меняясь во времени. Их поведение зависит исключительно от значения параметров и внешних сил (если они применяются). Лучший способ научиться работать с частицами – экспериментировать с различными значениями их параметров.

Программа 3ds Max содержит семь различных типов систем частиц.

Particle Flow Source (Источник потока частиц) – частицы, которые можно определить с помощью окна Particle View (Окно системы частиц) и контролируемые при помощи действий (Actions) и событий (Events).

Spray (Брызги) – система частиц, имитирующая капли воды, брызги и т. д. Эти капли можно представить в виде Drops (Капли), Dots (Точки) или Ticks (Черточки). Частицы движутся по прямой линии от излучателя сразу же после создания.

Snow (Снег) – создает эффект падающего снега или конфетти. Эта система частиц подобна Spray (Брызги), но имеет дополнительные параметры для настройки поведения снежинок при падении. Кроме представления в виде точек и черточек частицы системы Snow (Снег) можно визуализировать в виде снежинок (Flakes (Снежинки)).

Blizzard (Метель) – усовершенствованная модель частиц Snow (Снег), которая имеет дополнительные параметры и может использовать при визуализации форму различных объектов (треугольников, сфер и т. д.).

PArray (Массив частиц) – дает возможность применять два типа поведения частиц:

· использование объектов сцены в качестве источников для излучаемых частиц.

· создание усовершенствованных эффектов имитации взрыва.

PCloud (Облако частиц) – создает облако частиц, заключенных в габаритный контейнер, в качестве которого могут выступать другие объекты сцены. Данную систему частиц можно применять для имитации стаи птиц, косяков рыб, звездных полей, группы животных и т. д.

Super Spray (Супербрызги) – усовершенствованный вариант частиц Spray (Брызги), имеющий множество дополнительных параметров.

В 3ds Max системы частиц можно создавать тремя способами:

С помощью подменю команды главного меню Create > Particles (Создание > Частицы);

Используя группу Particle Systems (Системы частиц) категории Geometry (Геометрия) вкладки Create (Создание) командной панели (рис. 4.23);

Рис. 4.23. Кнопки создания систем частиц на командной панели


При помощи окна Particle View (Окно системы частиц), которое вызывается командой главного меню Graph Editors > Particle View (Графические редакторы > Окно системы частиц).

При создании системы частиц, не использующих габаритный контейнер (таких как Spray (Брызги), Snow (Снег), Blizzard (Метель)), прежде всего необходимо определить положение в пространстве точки генерации частиц, называемой эмиттером, и направление, в котором они будут испускаться. Эмиттер представляет собой плоскость с перпендикулярным вектором, расположенным в середине этой плоскости (рис. 4.24). Именно направление вектора указывает сторону, в которую будут испускаться частицы.


Рис. 4.24. Эмиттер системы частиц Snow (Снег)


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

Аналогичным образом в окнах проекций представлены частицы Particle Flow Source (Источник потока частиц), Super Spray (Супербрызги). Разница лишь в том, что эмиттеры этих объектов имеют форму, отличную от прямоугольника, но как и рассмотренные выше, имеют вектор, указывающий направление излучения частиц.

Несколько иначе отображаются в окнах проекций частицы PArray (Массив частиц) и PCloud (Облако частиц). Их эмиттер представлен в виде габаритного контейнера. Для частиц PArray (Массив частиц) это куб, с возможностью выбора объектов сцены в качестве эмиттера. Для PCloud (Облако частиц), кроме объектов сцены, можно использовать параллелепипед, сферу или цилиндр (рис. 4.25).


Рис. 4.25. Габаритный контейнер частиц PCloud (Облако частиц) в виде параллелепипеда


Помимо одиночных, можно создавать сложные системы частиц с использованием операторов и тестирования событий по различным признакам. Для создания сложных систем следует использовать окно Particle View (Окно системы частиц) (рис. 4.26).

Рис. 4.26. Окно Particle View (Окно системы частиц)

Окно Particle View (Окно системы частиц) имеет следующие элементы управления.

Меню предоставляет доступ к командам редактирования, выделения, настройкам отображения и анализа системы частиц.

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

Панель параметров содержит свитки параметров любых выделенных объектов.

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

· операторы – основные элементы системы частиц, позволяющие организовывать события (Events), которые описывают поведение частиц в определенный период времени. В окне Particle View (Окно системы частиц) они представлены квадратными значками с пиктограммами на синем фоне. В эту же категорию попадают два зеленых круглых значка, соответствующие времени жизни частиц;

· тестировщики – функции, тестирующие систему частиц на соответствие какому-либо заданному условию и позволяющие при выполнении этого условия, направить ход выполнения операторов к другому событию. В окне диалога эти элементы представлены ромбовидными значками с пиктограммами на желтом фоне;

· потоки частиц – категория, содержащая два оператора, предназначенных для создания начального события системы частиц. Этими операторами являются Empty Flow (Пустой поток) и Standard Flow (Типовой поток), имеющие значки в виде двух связанных между собой белых прямоугольников.

Панель описания – содержит краткую информацию о событии, выделенном в окне списка операторов.

Инструменты отображения – предназначены для навигации в окне Particle View (Окно системы частиц).

Текст, уносимый порывами ветра

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

Примечание

В видеоуроке «Урок 26. Текст, уносимый порывами ветра», который находится на DVD, прилагаемом к книге, показан пример использования системы частиц.

Для выполнения упражнения нам понадобится простая сцена – какой-нибудь объект, например текст (рис. 4.27).


Рис. 4.27. Текст, подготовленный для выполнения упражнения


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

1. Выполните команду главного меню Create > SpaceWarps > Deflectors > SDeflector (Создание > Пространственные деформации > Отражатели > Сферический отражатель) и в окне проекции Top (Сверху) постройте значок объекта.

2. Используя инструмент Select and Move (Выделить и переместить), расположите значок в середине текста.

3. Активизируйте инструмент Select and Uniform Scale (Выделить и равномерно масштабировать)

и масштабируйте значок SDeflector01 таким образом, чтобы он оказался немного больше объекта Text01 (рис. 4.28).


Рис. 4.28. Расположение значка отражателя SDeflector01 относительно объекта Text01


4. Создайте три объекта Wind (Ветер). Для этого выполните команду Create > SpaceWarps > Forces > Wind (Создание > Пространственные деформации > Силы > Ветер) и постройте значки в окне проекции Top (Сверху).

5. Выделите один из построенных объектов Wind (Ветер). Используя инструмент Select and Move (Выделить и переместить), переместите его так, чтобы он находился слева от текста. При помощи инструмента Select and Rotate (Выделить и повернуть) поверните значок Wind (Ветер) на 90° таким образом, чтобы направление ветра приходилось на текст (рис. 4.29).


Рис. 4.29. Расположение значков ветра и их ориентация в окне проекции Front (Спереди)


6. Создайте еще один вспомогательный объект – Drag (Помеха). Для этого выполните команду Create > SpaceWarps > Forces > Drag (Создание > Пространственные деформации > Силы > Помеха) и постройте объект в произвольном месте окна проекции Top (Сверху).

Анимируем отражатель следующим образом.

1. Передвиньте ползунок таймера в пятый кадр анимации.

2. Активизируйте запись ключей анимации. Для этого щелкните на кнопке Auto Key (Автоключ), в результате чего кнопка выделится цветом

3. Выделите отражатель (объект SDeflector01 ) и в окне проекции Front (Спереди) передвиньте его вправо на такое расстояние, чтобы он оказался за пределами текста.

4. Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

5. Выделите ключ, созданный автоматически в нулевом кадре, и передвиньте его в последний кадр строки треков (в моем случае это 200 кадр).

6. Проверьте созданную анимацию. В первом кадре отражатель SDeflector01 должен находиться за пределами текста, а начиная с пятого кадра – перемещаться на текст, полностью перекрывая его.

Создадим систему частиц и необходимые операторы. Выполним все эти действия при помощи окна Particle View (Окно системы частиц), которое можно открыть, выполнив команду Graph Editors > Particle View (Графические редакторы > Окно системы частиц). В окне Particle View (Окно системы частиц) сделайте следующее.

1. Для создания излучателя частиц перетащите из списка операторов, находящегося в нижней части окна, в окно событий объект Empty Flow (Пустой поток) (рис. 4.30).


Рис. 4.30. Окно Particle View (Окно системы частиц) с построенным излучателем частиц PF Source (Источник потока частиц)


2. В окно событий также перетащите оператор Birth (Рождение), который автоматически создаст список событий с оператором отображения частиц.

3. Свяжите список событий с источником частиц, для чего щелкните на выступающем круглом элементе списка событий (в результате вид указателя изменится) и перетащите его на объект PF Source 01 . В результате образуется связь между источником частиц и списком событий (рис. 4.31).

Рис. 4.31. Список событий, связанный с источником частиц


4. Таким же образом добавьте к списку событий следующие операторы:

· Position Object (Положение объекта) – позволяет расположить частицы по форме выбранного объекта;

· Shape (Форма) – задает форму отображения частиц при визуализации;

· Collision (Столкновения) – позволяет управлять отражателями частиц.

5. Добавьте к потоку частиц PF Source 01 оператор Material Static (Статический материал) – материал, используемый для отображения частиц при визуализации (рис. 4.32).

Рис. 4.32. Окно Particle View (Окно системы частиц) после обновления списка событий


6. Последнее, что необходимо добавить в окно событий, – объект Force (Сила), который связывается с оператором Collision (Столкновения) (рис. 4.33).

Рис. 4.33. Окончательный вид окна событий после добавления всех операторов


Примечание

Создание второго списка событий вызвано тем, что силы, действующие на частицы, должны инициироваться в области воздействия отражателя SDeflector01, а не на весь объект PF Source 01.

Займемся настройкой параметров системы частиц. Начнем со списка событий Event 01 . Выделите оператор Birth 01 (Рождение 01), в результате чего в правой части окна Particle View (Окно системы частиц) появится свиток Birth 01 (Рождение 01). В этом свитке установите значения параметров Emit Start (Начало излучения) и Emit Stop (Конец излучения) равными 0, а Amount (Величина) – 40 000. Это будет означать, что сразу все частицы будут генерироваться в нулевом кадре анимации.

Выделите оператор Position Object 01 (Положение объекта 01). В области Emitter Objects (Объекты-источники) свитка его настроек в правой части окна Particle View By List (Из списка). В открывшемся окне выберите объект Text01 . В результате частицы покроют объект Text01 , расположившись на его поверхности. Объект Text01 не должен участвовать в визуализации, поэтому его можно спрятать. Для этого выделите его в одном из окон проекций, щелкните правой кнопкой мыши и выберите в контекстном меню команду Hide Selection (Спрятать выделенное).

Совет

Исключить объект из визуализации можно и другим способом – сняв в области Rendering Control (Контроль визуализации) окна свойств объекта флажок Renderable (Визуализируемый).

Следующий оператор, который нужно настроить, – Shape 01 (Форма 01). Выделите его и в свитке Shape 01 (Форма 01) выберите из списка Shape (Форма) строку Cube (Куб), а параметру Size (Размер) задайте значение 0,4.

Еще один оператор в списке событий Event 01 (Событие 01), требующий настройки, – Collision 01 (Столкновение 01). Выделите его и в свитке его параметров щелкните на кнопке By List (Из списка) и выберите объект SDeflector01 из списка появившегося окна. В свитке Collision 01 (Столкновение 01) выберите из раскрывающегося списка Speed (Скорость) строку Continue (Продолжать). Таким образом, частицы при столкновении с отражателем будут продолжать свое движение.

Перейдите ко второму списку событий Event 02 (Событие 02). Выделите в этом списке событие Force 01 (Сила 01). В свитке его настроек в правой части окна Particle View (Окно системы частиц) щелкните на кнопке By List (Из списка) и выберите в раскрывшемся окне все объекты: три объекта, имитирующих ветер, и объект Drag (Помеха).

Остался последний оператор, требующий настройки, – Material Static 01 (Статический материал 01). Для присвоения частицам материала, который будет отображаться в окнах проекций, сделайте следующее.

1. Откройте редактор материалов, для чего воспользуйтесь клавишей M .

2. Выберите любой свободный материал и задайте параметру Diffuse (Рассеивание) цвет, отличный от черного (по умолчанию черным является цвет фона).

3. Задайте параметру в области Self-Illumination (Собственное свечение) значение 100.

4. Присвойте материалу какое-нибудь значимое имя, например particle .

5. Вернитесь к окну Particle View (Окно системы частиц) и выберите оператор Material Static 01 (Статический материал 01).

6. В свитке Material Static 01 (Статический материал 01) в правой части окна Par ticle View (Окно системы частиц) щелкните на кнопке None (Отсутствует).

7. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) установите переключатель Browse From (Просмотреть из) в положение Mtl Editor (Редактор материалов) и выберите из списка материал с именем particle (рис. 4.34).

Рис. 4.34. Окно Material/Map Browser (Окно выбора материалов и карт) с выбранным материалом


Если сейчас переместить ползунок таймера анимации, то вы увидите, как при наезде значка отражателя на текст начинается рассеивание частиц, находящихся в этом месте. Пока это не совсем то, что нам нужно, так как на частицы действуют слишком большие силы. В связи с этим необходимо подкорректировать параметры объектов Wind (Ветер) и Drag (Помеха). Начнем с параметров ветра. Они должны быть совсем небольшими, чтобы ветер лишь отрывал частицы от генерирующего их объекта и уносил на небольшое расстояние. На рис. 4.35 показаны примерные настройки ветра, причем Wind01 и Wind02 действуют в вертикальной плоскости, и Wind03 – в горизонтальной и направлен в сторону текста.


Рис. 4.35. Настройки объектов Wind01 (а) , Wind02 (б) и Wind03 (в)


Для объекта Drag (Помеха) существенными являются характеристики затухания, настройки которого находятся в области Damping Characteristics (Характеристики затухания) свитка Parameters (Параметры). Установите переключатель в этой области в положение Linear Damping (Линейное затухание) и параметрам X Axis (Ось X), Y Axis (Ось Y) и Z Axis (Ось Z) задайте значения 20, 15 и 7 соответственно.

Примечание

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

При анимации частиц такого рода очень уместно использовать эффект размытия в движении. Такой эффект появляется при съемке движения реальной камерой или фотоаппаратом, так как за то время, пока шторка аппарата находится в открытом состоянии, движущийся объект проходит некоторое расстояние, и в результате его границы размываются. В 3ds Max такой эффект можно создать несколькими способами, мы рассмотрим самый простой и быстрый с точки зрения визуализации.

1. Откройте окно редактирования системы частиц, выполнив команду меню Graph Editors > Particle View (Графические редакторы > Окно системы частиц).

2. В окне событий выделите PF Source 01 , щелкнув на нем. В результате цвет контура объекта изменится на белый. Щелкните на нем правой кнопкой мыши и выберите из контекстного меню строку Properties (Свойства) (рис. 4.36).

Рис. 4.36. Контекстное меню объекта PF Source01


3. В области Motion Blur (Размытие движения) открывшегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображение), задайте параметру Multiplier (Усилитель) значение 12 и проследите, чтобы флажок Enable (Включить) был установлен.

4. Откройте окно Render Scene (Визуализация сцены), для чего воспользуйтесь клавишей F10 , и перейдите на вкладку Renderer (Визуализатор).

5. В области Image Motion Blur (Размытие картинки в движении) установите флажок Apply (Применить).

На рис. 4.37 показан кадр из анимации, выполненной в данном разделе.


Рис. 4.37. Визуализация 48 кадра анимации


Примечание

В папке Examples\Глава 04\Text_dispersion прилагаемого к книге DVD находится файл описанной сцены text_dispersion.max.

Использование модификатора Cloth (Ткань) для симуляции поведения тканей

Рассмотрим работу с модификатором Cloth (Ткань). В отличие от одноименного оператора модуля reactor этот модификатор в первую очередь призван облегчить создание и анимацию одежды моделируемых персонажей. Данный модификатор имеет достаточно широкие возможности, которые можно довольно долго описывать, я же хочу показать, как при помощи модификатора Cloth (Ткань) можно легко и просто создавать объекты, имитирующие поведение ткани. Мы опишем, как создать два объекта: скатерть и развевающийся флаг.

Примечание

В видеоуроке «Урок 27. Использование модификатора Cloth (Ткань) для симуляции поведения тканей», который находится на DVD, прилагаемом к книге, показаны примеры применения модификатора Cloth (Ткань).

Для создания модели скатерти нам понадобится простая сцена, состоящая из двух объектов: столешницы и скатерти. Для построения первого объек та воспользуйтесь параметрическим объектом Box (Параллелепипед) (Create > Standard Primitives > Box (Создать > Простые примитивы > Параллелепипед)).

В качестве второго объекта будет использован объект формы Rectangle (Прямоугольник) (Create > Shapes > Rectangle (Создание > Формы > Прямоугольник)). Создайте оба объекта в окне проекции Top (Сверху). Расположите прямоугольник относительно объекта столешницы сверху и центрируйте по осям X и Y (рис. 4.38).


Рис. 4.38. Взаимное расположение объектов в сцене


Примечание

Для создания ткани можно также воспользоваться параметрическим объектом Plane (Плоскость) с достаточным количеством сегментов по длине и ширине (допустим, 50), однако применение сплайнов позволяет получить дополнительные возможности: создание объектов произвольной формы (например, скатерть с фигурными краями), внутренние швы и разрезы. Особенно это актуально при создании одежды.

На основе объекта Rectangle (Прямоугольник) необходимо создать поверхность. Самый легкий способ – преобразовать прямоугольник в полигональную поверхность. Однако при этом мы потеряем дополнительные возможности объекта формы. Лучшим выбором в данном случае будет использование модификатора Garment Maker (Моделирование одежды). Чтобы присвоить этот модификатор, выделите в одном из окон проекций прямоугольник и выполните команду главного меню Modifiers > Cloth > Garment Maker (Модификаторы > Ткань > Моделирование одежды). Обратите внимание, что два из четырех углов стали закругленными. Избавиться от этого можно, выполнив разбиение вершин этих углов, что приведет к созданию самостоятельных сплайнов на уровне подобъектов формы. Для этого перейдите в стеке модификаторов на нижний уровень (то есть выделите в стеке строку Rectangle (Прямоугольник)), щелкните на раскрывающемся списке Modifier List (Список модификаторов) и выберите из списка модификатор Edit Spline (Редактирование сплайна) (рис. 4.39).

Рис. 4.39. Положение модификатора Edit Spline (Редактирование сплайна) в стеке


Для редактирования прямоугольника перейдите на уровень подобъектов Vertex (Вершина), для чего щелкните в настройках модификатора Edit Spline (Редактирование сплайна) на кнопке Vertex (Вершина) в свитке Selection (Выделение) или нажмите горячую клавишу 1 . Выделите все четыре вершины прямоугольника, перейдите к свитку Geometry (Геометрия) и щелкните на кнопке Break (Разбить). После этого выйдите из режима редактирования вершин, повторно щелкнув на кнопке Vertex (Вершина), и вернитесь к модификатору Garment Maker (Моделирование одежды).

Для продолжения работы необходимо обновить созданную модификатором поверхность и увеличить ее топологию. Для этого в свитке Main Parameters (Основные параметры) настроек модификатора Garment Maker (Моделирование одежды) щелкните на кнопке Mesh It! (Рассчитать сетку) и увеличьте значение параметра Density (Плотность) до 2.

Внимание!

Увеличение количества треугольников, образующих поверхность объекта позволит создать более естественное поведение ткани. Однако на компьютерах с низкой производительностью это может вызвать длительные расчеты динамики ткани и даже зависания. По данной причине на таких компьютерах лучше не задавать параметру Density (Плотность) значение больше 1.

В результате все углы станут ровными, а плотность сетки повысится, что позволит получить сглаженные складки поверхности ткани. На рис. 4.40, слева показан фрагмент прямоугольника с примененным модификатором Garment Maker (Моделирование одежды) до редактирования, а на рис. 4.40, справа – после.


Рис. 4.40. Фрагмент прямоугольника до редактирования (слева) и после него (справа)


Применим к прямоугольнику модификатор Cloth (Ткань), выполнив команду главного меню Modifiers > Cloth > Cloth (Модификаторы > Ткань > Ткань). Для настройки поведения ткани выполните следующие действия.

1. В свитке Object Cloth (Ткань) щелкните на кнопке Object Properties (Свойства объекта).

2. В появившемся окне Object Properties (Свойства объекта) выберите из списка доступных объектов прямоугольник (объект с именем Rectangle01 ) и установите переключатель в положение Cloth (Ткань).

3. В области Cloth Properties (Свойства ткани) из раскрывающегося списка Presets (Предустановки) выберите строку Default (Исходный) (рис. 4.41).

Рис. 4.41. Настройка свойств объекта Rectangle01


4. Чтобы использовать в расчетах поведения ткани поверхности стола (в нашем случае – это построенный ранее параллелепипед) в окне Object Properties (Свойства объекта) щелкните на кнопке Add Objects (Добавить объекты) и в появившемся окне Add Objects to Cloth Simulation (Добавить объекты к расчетам динамики ткани) выберите объект Box01 и нажмите кнопку Add (Добавить).

5. Для объекта Box01 установите переключатель в положение Collision Object (Объект столкновения) и оставьте значения, принятые по умолчанию (рис. 4.42).

Рис. 4.42. Настройка свойств объекта Box01


6. Щелкните на кнопке OK для закрытия окна Object Properties (Свойства объекта).

Все готово к расчетам динамики ткани. Чтобы запустить эти расчеты, необходимо в области Simulation (Моделирование) свитка Object (Объект) щелкнуть на кнопке Simulate (Моделирование) или на кнопке Simulate Local (Локальное моделирование) (если не планируете создавать анимацию поведения ткани во времени).

Примечание

После запуска расчета динамики вы можете в любое время остановить его и выполнить дополнительную настройку свойств объектов, например изменить плотность сетки модификатора Garment Maker (Моделирование одежды). В этом случае необходимо вернуть ползунок таймера анимации на первый кадр (если вы не использовали локальные расчеты динамики) и щелкнуть на кнопке Erase Simulation (Очистить моделирование) в свитке Object (Объект).

На рис. 4.43 показан результат расчета динамики ткани.


Рис. 4.43. Результат расчетов модификатора Cloth (Ткань)


Примечание

В папке Examples\Глава 04\Cloth прилагаемого в книге DVD находится файл table-cloth.max, который можно загрузить для просмотра и анализа выполненной анимации.

Рассмотрим еще один вариант использования модификатора Cloth (Ткань): создадим модель развевающегося флага. В этом нам поможет замечательная особенность данного модификатора, позволяющая взаимодействовать со стандартными объектами категории Force (Сила).

Как всегда начнем с построения объектов. Для имитации флага нам понадобятся два объекта: Plane (Плоскость), имитирующий полотно флага, и Wind (Ветер), который будет удерживать флаг в горизонтальном положении (по умолчанию на объекты, к которым применен модификатор Cloth (Ткань), действует сила тяжести).

Для построения плоскости переключитесь в окно проекции Front (Спереди) и выполните команду главного меню Create > Standard Primitives > Plane (Создание > Простые примитивы > Плоскость). В свитке Parameters (Параметры) построенного объекта установите желаемые размеры флага и увеличьте значения параметров Length Segs (Количество сегментов по длине) и Width Segs (Количество сегментов по ширине) до 20–25. Это позволит получить более естественную деформацию ткани.

Для построения объекта, имитирующего ветер, необходимо выполнить команду главного меню Create > SpaceWarps > Forces > Wind (Создание > Пространственные деформации > Силы > Ветер) и в окне проекции Top (Сверху) построить значок ветра, развернув его по направлению к флагу (рис. 4.44).


Рис. 4.44. Взаимное расположение плоскости и значка ветра


Назначьте плоскости модификатор ткани. Для этого в одном из окон проекций выделите плоскость и выполните команду главного меню Modifiers > Cloth > Cloth (Модификаторы > Ткань > Ткань). Настройте модификатор следующим образом.

1. Перейдите на уровень редактирования подобъектов модификатора Cloth (Ткань), для чего щелкните на плюсике, расположенном слева от имени модификатора в стеке, и выделите строку Group (Группа).

2. Выделите слева верхнюю и нижнюю боковые вершины и щелкните на кнопке Make Group (Создать группу) в свитке Group (Группа). В результате откроется окно Make Group (Создать группу), в котором необходимо указать имя группы. Таким образом мы создадим группу из двух точек, которые будут крепиться к древку флага и не будут участвовать в расчетах динамики.

3. После создания группы щелкните на кнопке Drag (Помеха) в свитке Group (Группа). При этом созданная группа должна быть активной (рис. 4.45).

Рис. 4.45. Свиток Group (Группа) с созданной группой из двух точек


4. Выйдите из режима редактирования подобъектов, для чего щелкните в стеке модификаторов на строке Cloth (Ткань).

5. В свитке Object (Объект) щелкните на кнопке Cloth Forces (Силы, воздействующие на ткань).

6. В левой части открывшегося окна Forces (Силы) щелкните на строке Wind01 и нажмите кнопку > , в результате чего Wind01 переместите в список Forces in Simulation (Симуляция сил).

7. Вернитесь к свитку Object (Объект) настроек модификатора Cloth (Ткань) и щелкните на кнопке Object Properties (Свойства объекта).

8. В открывшемся окне Object Properties (Свойства объекта) выделите строку Plane01 и установите переключатель в положение Cloth (Ткань).

9. Из раскрывающегося списка в области Cloth Properties (Свойства ткани) выберите строку Silk (Шелк). Таким образом, объекту Plane (Плоскость) будут присвоены свойства шелковой ткани (рис. 4.46).

Рис. 4.46. Свойства ткани, настроенные для объекта Plane01


10. Подтвердите выполненные изменения щелчком на кнопке OK .

Все предварительные настройки произведены, осталось только увеличить силу ветра и запустить выполнение расчетов динамики ткани. Для этого выделите в одном из окон проекций значок ветра и в свитке Parameters (Параметры) настроек данного объекта увеличьте значение параметра Strength (Мощность) до 5. Чтобы запустить расчет динамики, вернитесь к модификатору Cloth (Ткань) и в свитке Object (Объект) щелкните на кнопке Simulate (Моделирование).

На рис. 4.47 представлен флаг, полученный при помощи модификатора Cloth (Ткань).


Рис. 4.47. Флаг, полученный при помощи модификатора Cloth (Ткань)


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

Примечание

В папке Examples\Глава 04\Cloth прилагаемого DVD находится файл flag.max, который можно загрузить для просмотра и анализа выполненной анимации.

Всем привет! Данной темой статьи является анимация в 3d Max. В этом уроке я подробно расскажу о необходимых инструментах анимации, зная которые, можно сделать простейшую анимацию объекта. Инструменты для анимации расположены в нижней части интерфейса 3d Max.

Анимация в 3d Max. Auto Key. Set Key.

1. Шкала времени.

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

2. Ползунок.

Положение ползунка на шкале соответствует текущей стадии анимации.

3. Управление положения ползунка.

А) Текущий кадр.

Б) Play Animation.

Воспроизведение анимации

В) Next/Previous frame.

Следующий/предыдущий кадр.

Г) Go to Start/End.

Начало/конец шкалы анимации.

Д) Key Mode Toggle.

При нажатии данной клавиши команды «Next/Previous Frame » превращается в «Next/Previous Key » то есть «Следующий/предыдущий » ключ. Понятие «Ключ » смотрите в пункте 5.

4. Time Configuration.

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

А) Frame Rate.

Кадровая частота, то есть количество кадров/фреймов за секунду. Здесь можно выбрать несколько форматов:

NTSC 30 кадров/сек

PAL 25 кадров/сек

Film 24 кадра/сек

Custom «свое число» кадров/сек

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

Б) Time Display.

Отображение времени.

1) Frames

Кадры/Фреймы.

2) SMPTE

Минуты: Секунды: Фреймы

В) PlayBack.

Воспроизведение анимации:

1) RealTime.

При поставленной галочке на «RealTime » скорость ползунка будет воспроизводиться от заданного формата частоты кадров. Эту скорость можно будет уменьшить или увеличить в зависимости от коэффициента параметра «Speed » .

2) Active Viewport Only.

Данная команда отображает анимацию объекта только в активном рабочем окне. При ее снятии анимация объекта будет производиться во всех окнах.

3) Loop.

Команда «Loop » зацикливает движения ползунка по шкале.

Г) Animation.

Здесь можно задать:

1) Start Time/ End Time.

Начальный и конечный кадр.

2) Length.

Длину шкалы времени.

3) Frame Count.

Длину шкалы времени, включая все фреймы.

4) Current Time.

Текущее положение ползунка на шкале.

5) Re-Scale Time.

Команда «Re-Scale Time » позволяет отмасштабировать уже имеющуюся анимацию, меняя в ней количество фреймов.

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

5. Auto Key.

Существует 2 способа анимации объектов: автоматический («Auto Key ») и ручной («Set Key »).

При «Auto Key » ключи ставятся автоматически сразу после того, как перемещаешь ползунок и меняешь анимируемый параметр. К примеру:

А) Создадим сплайн «Circle » ;

О том как создавать сплайны смотрите

Б) Включаем режим «Auto Key » , ползунок в этот момент в нулевом положении;

В) Перемещаем ползунок на 50 фрейм;

Г) Перемещаем нашу окружность в пространстве;

Более подробно о способах трансформации объектов смотрите

Д) Отжимаем кнопку «Auto Key » ;

Теперь, если перемещать ползунок от 0 до 50-ти, то наш объект будет анимироваться. На нашей шкале в кадрах 0, 50 создались красные прямоугольники

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

6. Set Key.

А) Перемещаем ползунок в первоначальное положение и удаляем все ключи;

Б) Включаем режим «Set Key » , нажав на кнопку «Toggle Set Key Mode » ;

В) Жмем на кнопку «Set Keys » ;

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

Г) Перемещаем ползунок в 50-ый фрейм и отмасштабируем нашу окружность по всем осям.

Д) Опять жмем на кнопку «Set Keys « и отжимаем кнопку «Toggle Set Key Mode » .

Данный способ отнимает чуть больше времени, зато значительно уменьшается вероятность сделать ошибку. Иногда при работе в автоматическом режиме «Auto Key » забываешь, что ты в режиме анимации и редактируя объект, параллельно создаешь ненужные ключи.

Урок по рендерингу анимации 3d Max | Экспорт анимации 3d Max в видео

Многие новички задаются вопросом: "Что делать, после того как я создал в 3ds Max свою анимацию? Как её можно экспортировать в видеофайл?". На ум приходит, вроде бы, логичный ответ: сразу рендерить в формат.avi. Но такой подход мне кажется неверным и, на мой взгляд, он непрактичен. Я вам предлагаю делать это по-другому: производить рендеринг, сохраняя каждый кадр анимации отдельным изображением.

Это гораздо удобнее, чем делать визуализацию в.avi, ведь в этом случае вы можете отрендерить пару кадров сегодня, выключить компьютер, и продолжить рендерить анимацию в любой другой день, указав программе, чтобы она рендерила уже со следующего кадра. А когда последний кадр будет готов, все получившиеся изображения можно импортировать в любую программу по видеомонтажу и склеить. А можно сделать это прямо в самом 3D Max, хоть и не без лишних удобств. В этом случае не страшны отлючения света

Опишу способ пошагово.

1. Настроив свет и материалы в сцене, выполнив несколько тестовых визуализаций, укажем 3D Max, что мы собираемся произвести рендеринг анимации. Для этого в окне Render Setup установим переключатель Time Output в положение Active Time Segment, чтобы сообщить программе, что рендерить нужно с нулевого кадра по последний. Если вам нужен только диапазон кадров, то выбирайте в Range, с какого по какой кадр нужна визуализация. А если нужны какие-то конкретные кадры, то впишите их номера и/или диапазоны в поле Frames.

2. Если кто не знает, то разрешение выходного изображения устанавливается в разделе Output Size. Можно выбрать из предложенных вариантов, а можно ввести свое уникальное разрешение.

3. В разделе Render Output нажимаем кнопку Files и переходим в папку (или создаём новую), куда будем сохранять получившиеся кадры анимации. Далее, ребята, смотрите, здесь есть важный момент с выбором формата изображения. Нельзя использовать JPEG, так как этот формат построен на отсечении информации, недоступной человеческому зрению. Сжатие в одном кадре будет отличаться от сжатия в следующем, что на деле выльется в тихий ужас: всё склеенное из кадров видео будет дёргаться в конвульсиях. Поэтому нам необходимо выбрать формат изображения без потерь, например TIFF или TGA. В них от кадра к кадру не будет никаких артефактов сжатия.

4. Далее ещё один нюанс. Указываем имя первого сохранённого кадра pic_0000. Обратите внимание на структуру имени. pic - это просто имя самого кадра, оно может быть любым, а 0000 - порядковый номер первого кадра. Следующим за ним будет автоматически присвоено имя pic_0001, pic_0002 и т.д. Ну, вы уловили суть. Нолей не обязательно должно быть четыре, можно и три, это просто мне так удобнее делать с запасом

5. Как видите, у меня вместо названий кнопок какие-то крокозябры, мне это никак не мешает, так как назначение кнопок везде стандартное. Нажимаем кнопку Save для возврата в окно Render Setup Запускаем визуализацию нажатием на кнопку Render. Пока процесс рендеринга идёт, можно зайти в папку с рендерящимися кадрами и посмотреть первые из них с пылу-жару.

6. Когда закончится рендеринг, у вас должна получиться последовательность кадров. Давайте сделаем из неё видеоролик прямо в самом максе. Для этого откроем в меню Rendering > Ram Player...

7. Откроется окно RAM Player. В нём нажимаем на кнопку Open Channel A, далее выделяем любой файл и нажимаем кнопку Open.

8. Вылезет окошко Image File List Control. В нём уже будет указана вся последовательность ваших кадров. Жмём ОК и попадаем в следующее окно - RAM Player Configuration. Просто ещё раз нажимаем ОК. Запустится процесс загрузки кадров в оперативную память...

9. Воспроизвести анимацию можно, нажав кнопку Playback Forward. Рядом устанавливается частота кадров. Насмотревшись на ролик, можно сохранить его в.avi. Для этого нажмите кнопку Save Channel A. Откроется соответствующее окно. Выберите формат сохраняемого файла: AVI File (*.avi). Присвойте видеоролику имя и нажмите кнопку Save.

10. Выберите кодек, которым будет сжато видео. Наличие кодеков зависит от того, установлены они в вашей системе, или нет. Но кое-какие кодеки всё же у вас быть должны. Нажмите ОК и у вас появится сохранённое видео анимации.

Всё Я не затрагивал тему рендеринга по слоям, но в нём также применяется данный подход.


© 2024
alerion-pw.ru - Про лекарственные препараты. Витамины. Кардиология. Аллергология. Инфекции