Студопедия — Хід роботи. Это упражнение по созданию анимации зависимостей, когда параметры одного объекта управляют анимацией другого
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Хід роботи. Это упражнение по созданию анимации зависимостей, когда параметры одного объекта управляют анимацией другого






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

Сначала создадим простую модель механизма, состоящую из трех шестеренок разного диаметра.

Параметры для шестеренок.

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

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

1. Выполните команду Graph Editors • Track View — Curve Editor (Графические редакторы • Редактор треков — редактор кривых).

2. Найдите в левой части открывшегося окна Track View — Curve Editor (Редактор треков — редактор кривых) нужный объект (в нашем случае это Star0l — именно так называется большая шестеренка).

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

4. В списке доступных для анимации параметров выберите контроллер поворота по оси Z (если вы строили объекты в окне проекции Тор (Сверху)).

5. После этого щелкните на кнопке Add Keys (Добавить ключи) на панели инструментов окна Track View — Curve Editor (Редактор треков — редактор кривых). Теперь можно добавлять ключевые кадры и создавать первую часть анимации.

6. В правой части редактора кривых щелкните на пунктирной линии, чтобы создать первый ключевой кадр функциональной кривой. Затем немного сместитесь вправо и снова щелкните, чтобы создать еще один кадр. В данном случае их положение на функциональной кривой не имеет значения, так как оно будет скорректировано вместе со значением величины. Чтобы сделать это, щелкните на кнопке Move Keys (Переместить ключи), расположенной на панели инструментов окна Track View — Curve Editor (Редактор треков — редактор кривых), а затем на первой точке функциональной кривой, сделав ее активной. После этого введите в поля, расположенные в нижней части окна, значение 0 в первое поле, определяющее номер кадра, и значение 0 во второе поле, задающее величину поворота. Таким образом, вы создали ключевой кадр в начале анимации, где еще ничего не происходит (рис.).

7. Выберите вторую точку на функциональной кривой и задайте в поле номера кадра значение, равное 50 (так получится половина временной шкалы, если вы не меняли установки временной шкалы, заданные по умолчанию), и 360 для угла поворота. Это означает, что за 50 кадров шестеренка сделает полный оборот вокруг своей оси. При желании можете поэкспериментировать со значениями времени и величины угла поворота для второй точки.

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

Если сейчас запустить воспроизведение анимации, то вы увидите, что первая шестеренка в диапазоне временной шкалы от 1 до 50 кадра делает полный оборот и останавливается. Чтобы этого не происходило, нужно щелкнуть на кнопке Parameter Curve Out-of-Range Types (Типы экстраполяции параметрических кривых) панели инструментов окна Track View — Curve Editor (Редактор треков — редактор кривых).

В появившемся одноименном окне можно задать, каким образом будет выполняться анимация параметра, соответствующего выделенному треку, за пределами заданного диапазона кадров. Здесь необходимо выбрать значение Relative Repeat (Относительный повтор), при котором все значения параметра смещаются на величину, соответствующую концу диапазона. Иначе говоря, шестеренка будет непрерывно вращаться против часовой стрелки.

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

контекстном меню выберите Freeze Rotation (Фиксировать трансформацию поворота).

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

Выделите большую шестеренку (которой уже задано вращение). Выполните команду Animation • Wire Parameters • Parameter Wire Dialog (Анимация • Параметры связей • Окно параметров связей), после чего откроется диалоговое окно Parameter Wiring (Параметры связей) (рис.).

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

Если это не так, выделите его. В правой части диалогового окна нужно выбрать второй объект (у авторов это Star02). Для этой шестеренки вы также должны выделить контроллер анимации вращения по оси Z. После этого щелкните на кнопке со стрелкой вправо, под которой написано control direction (Направление контроля). Таким образом мы задали, что первая шестеренка будет управлять вращением второй.

Измените выражение, расположенное в правом нижнем поле таким образом, чтобы получилось -Z_Rotation*4, и нажмите кнопку Connect (Соединенные). После этого контроллер поворота по оси Z в левом окне окрасится в зеленый цвет, указывая на то, что он выступает в роли управляющего, а в правом окне — в красный цвет, что говорит о том, что этим контроллером управляют.

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

Цифра 4 — это число, означающее, во сколько раз у первой шестеренки больше зубьев, чем у второй (40 / 10 = 4), то есть вращение второй шестеренки должно происходить в четыре раза быстрее, чтобы синхронизировать зацепление зубьев. То же самое можно получить, рассчитав угол поворота для каждого зубца у первой и второй шестеренок, где у второй угол поворота получится в четыре раза больше (9 и 36° соответственно).

Если сейчас воспроизвести анимацию, щелкнув на кнопке Play Animation (Воспроизвести анимацию), расположенной в правом нижнем углу программы, то вы увидите, как вращаются первые две шестеренки.

Для третьей шестеренки последовательность действий та же, что и для второй, с той лишь разницей, что в роли ведущей теперь будет выступать вторая шестеренка, а выражение, используемое для передачи движения, будет таким: - Z_Rotation / 2. В данном случае делим на 2, так как третья шестеренка имеет в два раза больше зубьев, чем вторая, соответственно, будет вращаться в два раза медленнее.

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

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

(ground), фонтан (fountain), трубу, из которой будет вытекать вода (tube), и поверхность воды внутри фонтана (water) (рис.).

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

1. Выполните команду Create • SpaceWarps • Geometric/Deformable • Ripple (Создание • Пространственные деформации • Деформируемая геометрия • Рябь).

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

3. Свяжите объект water (поверхность воды в фонтане) с источником объемных деформаций. Для этого на главной панели инструментов нажмите кнопку Bind to Space Warp (Связать с воздействием) |g§, затем в одном из окон проекций щелкните на поверхности воды и переместите указатель на значок источника деформации. В результате поверхность воды покроется рябью волн, расходящейся от центра (рис.).

Анимируем движение воды на поверхности фонтана. Для этого сделайте следующее.

1. Щелкните на кнопке Auto Key (Автоключ).

2. Передвиньте ползунок таймера анимации в 400 кадр. Если вы решили выполнить упражнение, используя собственную сцену, то увеличьте количество кад ров анимации до 400-500.

3. В области Ripple (Рябь) свитка Parameters (Параметры) настроек объекта Ripple0l задайте параметру Phase (Фаза) значение -60.

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

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

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

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

1. Перейдите на вкладку Create (Создание) командной панели, щелкните на кнопке Geometry (Геометрия), выберите из раскрывающегося списка строку Particle Systems (Системы частиц) и щелкните на кнопке PF Source (Источник потока частиц).

2. В окне проекции Тор (Сверху) постройте значок произвольного размера.

3. Используя инструмент Select and Rotate (Выделить и повернуть), поверните значок в любом окне проекции так, чтобы стрелка, указывающая направление излучения частиц, была направлена вверх.

4. В свитке Emission (Излучение) настроек построенного объекта PF Source 01 из раскрывающегося списка Icon Type (Тип значка) выберите строку Circle (Окружность).

5. В этом же свитке параметру Diameter (Диаметр) задайте значение, равное диаметру трубы, из которой будет вытекать струя воды. В нашем случае этот диаметр равен 50 мм (рис.).

6. Используя инструмент Select and Move (Выделить и переместить), разместите значок объекта PF Source 01 так, чтобы он оказался в середине фонтана, в верхней части трубы, из которой будет вытекать вода.

Прежде чем переходить к детальной настройке поведения частиц, построим еще несколько объектов.

Во-первых, нам понадобится объект, имитирующий гравитацию. Выполните команду Create • SpaceWarps • Forces • Gravity (Создание • Пространственные деформации • Силы • Сила тяжести) и в окне проекции Тор (Сверху) постройте значок объекта Gravity (Сила тяжести).

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

Для создания отражателя выполните команду Create • SpaceWarps • Deflectors • UDeflector (Создание • Пространственные деформации • Отражатели • U-отражатель) и в окне проекции Тор (Сверху) постройте значок отражателя.

В-третьих, нужно создать ветер. Для этого выполните команду Create • SpaceWarps • Forces • Wind (Создание • Пространственные деформации • Силы • Ветер), построив значок в окне проекции Left (Слева) таким образом, чтобы он находился на некоторой высоте по отношению к поверхности воды в фонтане (рис.).

Вернемся к настройкам системы частиц. В любом окне проекции выделите объект PF Source 01. Перейдите на вкладку Modify (Изменение) командной панели, в свитке Setup(Настройки) щелкните на кнопке Particle View (Окно системы частиц), в результате чего откроется одноименное окно. Выделите оператор с именем Birth 01 (Рождение 01). В правой части окна появится свиток с настройками источника частиц. Здесь необходимо задать параметру Emit Stop (Окончание излучения частиц) время окончания излучения частиц, которое определяется количеством кадров анимации (в нашем случае 400), и установить переключатель в положение Rate (Доля) (рис.).

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

Продолжим настраивать систему частиц в окне Particle View (Окно системы частиц) и увеличим скорость движения частиц. Это можно выполнить путем настройки оператора Speed 01 (Скорость 01).

Выделите строку с именем этого оператора в основном окне и справа в свитке его настроек установите значение параметра Speed (Скорость) с таким расчетом, чтобы к 50 кадру анимации поток частиц достиг предполагаемой верхней точки фонтана.

В нашем случае это значение оказалось равным 1800. В этом же свитке задайте параметру Variation (Разброс) значение 200, a Divergence (Отклонение) — 5.

Это позволит частицам по мере подъема вверх отклоняться от вертикальной траектории полета и менять скорость движения.

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

1. В окне Particle View (Окно системы частиц) щелкните правой кнопкой мыши в окне событий на строке Event 01 (Событие 01) и выполните команду Append • Operator • Force (Добавить • Оператор • Сила) появившегося контекстного меню. В результате в нижнюю часть списка операторов добавится новый оператор Force 01 (Сила 01).

2. В списке событий выделите добавленный оператор. В появившемся в правой части окна Particle View (Окно системы частиц) свитке Force 01 (Сила 01) щелкните на кнопке By List (Из списка).

3. В открывшемся окне Select Force Space Warps (Выбрать силу пространственной деформации) выберите объект GravityOl и щелкните на кнопке Select (Выделить) Если сейчас передвинуть ползунок анимации вправо, то можно заметить, что частицы, имитирующие фонтан, не просто движутся вверх. Поднявшись на некоторую высоту, они начинают падать вниз. Осталось только определить, на какой высоте вода должна падать вниз.

1. Для настройки параметров гравитации выделите в любом из окон проекций объект GravityOl (либо выберите его из списка объектов сцены). Перейдите на вкладку Modify (Изменение) командной панели и в свитке Parameters (Параметры) установите такое значение параметра Strength (Сопротивление), чтобы

в последнем кадре анимации поток частиц не превышал верхней точки фонтана. У нас это значение равно 0,45.

2. В окне Particle View (Окно системы частиц) повторите описанные выше действия и добавьте в список Force Space Warps (Сила пространственной деформации) силу ветра (объект Wind0l).

3. Выделите в любом окне проекции значок ветра и задайте в свитке Parameters (Параметры) такое значение параметра Strength (Сопротивление), чтобы фонтан немного отклонялся в сторону. В нашем случае это значение равно 0,02.

Запустите воспроизведение анимации, используя кнопку Play Animation (Воспроизвести анимацию), и убедитесь в том, что движение частиц соответствует нашему замыслу. На рис. 6.40 показано поведение частиц в 200 кадре анимации. Некоторые частицы, на которые действует сила ветра, отклоняются в сторону

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

1. В нижней части окна Particle View (Окно системы частиц) щелкните на объекте Collision (Столкновения) и переместите его в нижнюю часть списка событий (рис. 6.41).

2. Выделите в списке событий строку Collision 01 (Столкновение 01) и перейдите к одноименному свитку в правой части окна Particle View (Окно системы частиц). Щелкните на кнопке By List (Из списка).

3. В открывшемся окне Select Deflectors (Выбрать отражатели) выберите из списка объект UDeflector0l, то есть построенный ранее отражатель. Выбранный отражатель является объектно-базированным, то есть для его корректной работы необходимо указать объект сцены, поверхность которого будет являться преградой на пути движения частиц. На первый взгляд кажется, что для этой цели лучше всего подойдет объект, имитирующий поверхность воды, но при этом возникает небольшая проблема. Она заключается в том, что для имитации ряби на поверхности воды этот объект должен иметь плотную сетку полигонов. Для расчета отражений лучше всего подойдет объект с минимальным количеством полигонов, в противном случае время расчетов может увеличиться в несколько раз. Простым решением данной проблемы будет создание объекта Plane (Плоскость), который по размерам и расположению будет соответствовать объекту water, но в отличие от последнего будет иметь две грани (рис. 6.42).

1. Выберите из списка объектов сцены UDeflectorOl и перейдите на вкладку Modify

(Изменение) командной панели.

2. В свитке Basic Parameters (Базовые параметры) щелкните на кнопке Pick Object (Указать объект) и выберите в одном из окон проекций (или из списка объектов сцены) объект PlaneOl.

3. В области Particle Bounce (Отскоки частиц) задайте параметру Bounce (Отскоки) значение, равное 0,2, что позволит создавать на поверхности воды небольшие брызги.

4. Выделите объект PLaneOl и спрячьте его, используя команду Hide Selection (Спрятать выделенное) контекстного меню. Этот объект играет вспомогательную роль отражая падающие капли, и не должен участвовать в визуализации.

Передвиньте ползунок анимации. Сейчас частицы, падая на поверхность воды, должны отскакивать и перемещаться по направлению движения ветра, а достигнув края фонтана, падать вниз. В реальной жизни падающие капли не перемещаются по поверхности воды, а могут лишь образовывать брызги. Чтобы избавиться от данного эффекта, необходимо ограничить «время жизни» частиц. Это можно выполнить, добавив к списку событий оператор Delete (Удалить), перетащив его из списка объектов окна Particle View (Окно системы частиц). В свитке Delete 01 (Удалить 01) установите переключатель в положение By Particle Age (Согласно возрасту частиц), а параметр} Life Span (Время жизни) задайте значение 180 (рис. 6.43).

На этом настройку поведения частиц можно считать законченной.

Теперь настроим отображение частиц при визуализации. На данном этапе они представлены в окне проекции тиками (Ticks), а в процессе визуализации будут иметь вид тетраэдров (Tetra). В данном случае возможны два способа отображения частиц при визуализации:

-создание составного объекта BlobMesth (Капля), способного объединять геометрические формы (например, частицы, представленные сферами) в капли;

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

Воспользуемся вторым вариантом, как менее ресурсоемким. Для этого откройте окно Particle View (Окно системы частиц), выделите в нижней части окна оператор Shape Facing (Плоская форма) и перетащите его на оператор Shape 01 (Форма 01) списка событий, в результате чего последний будет заменен новым оператором.

Выделите его и в свитке Shape Facing 01 (Плоская форма 01) щелкните на кнопке None (Отсутствует). После этого укажите в одном из окон проекций на камеру Camera0l или выберите ее из списка объектов сцены, щелкнув на кнопке Select by Name (Выделить по имени). Параметру Units (Единицы) задайте значение 50 мм (он будет определять размер прямоугольников), а параметру W/H Ratio (Отношение ширины к высоте) укажите значение 2,5 (в результате прямоугольники станут растянутыми по ходу движения частиц).

Кроме того, необходимо определить ориентацию частиц в пространстве, выбрав в списке Orientation (Направление) строку Align to Speed Follow (Выровнять по ходу следования) (рис. 6.44).

Последнее, что осталось выполнить перед визуализацией, — применить к геометрии материал. Для этого необходимо добавить к списку событий оператор Material Dynamic (Материал динамики), перетащив его из списка операторов в очередь событий на место перед оператором Collision (Столкновения). Выделите его, в свитке Material Dynamic 01 (Материал динамики 01) щелкните на кнопке None (Отсутствует). В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) установите переключатель Browse From (Просмотреть из) в положение

Mtl Editor (Редактор материалов) и выберите из списка материал Blobs (рис. 6.45).

В результате список событий для источника частиц PF Source (Источник потока частиц) будет выглядеть так, как представлено на рис. 6.46.

Осталось только выполнить визуализацию созданной сцены. На рис. 6.47 представлена визуализация сцены в 285 кадре анимации с использованием эффекта Motion Blur (Размытие движения).







Дата добавления: 2015-09-19; просмотров: 531. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

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

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

СИНТАКСИЧЕСКАЯ РАБОТА В СИСТЕМЕ РАЗВИТИЯ РЕЧИ УЧАЩИХСЯ В языке различаются уровни — уровень слова (лексический), уровень словосочетания и предложения (синтаксический) и уровень Словосочетание в этом смысле может рассматриваться как переходное звено от лексического уровня к синтаксическому...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия