Практика Maya: отскакивающий мяч

Откройте файл и  начните с настройки  рабочего пространства для данной анимации.

1.     Откройте имеющийся на компакт-диске файл BallSetup.mb. В нем содер­ жится простая анимационная оснастка мяча, на  примере  которой будут рас­ смотрены некоторые основные  концепции  установки  ключевых кадров.

2.     Выберите пункт меню Windo w => Settings/Preference s => Preference s (Окно => Параметры/Предпочтения  =>  Предпочтения). Предпочтения  позволяют на­ строить  рабочее    пространство   и,    что   более   важно,   временную   шкалу (timeline)  анимации. Рассмотрим  параметры, которые следует изменить.

3.     Выбрав  категорию Interface (Интерфейс), установите  для  переключателей Ope n  Attribute  Editor  (Открывать  редактор  атрибутов) и  Ope n  Tool  Setting s  (Открывать параметры  инструмента)  значение In  Separat e  Windo w (В  от­ дельном  окне),  а для переключателя  Ope n  Layer Editor (Открывать  редактор  слоев) выберите значение In Main Maya Windo w (В главном окне Maya).

4.     Выбрав  категорию UI Element s (Элементы пользовательского  интерфейса), установите отображение  всех видимых  элементов  пользовательского интер­ фейса  (Visible  UI  Elements) ,  установив  все  флажки  указанного  раздела. В разделе Editor in  Main Windo w (Редактор в  главном окне) установите фла­

жок  Sho w  (Показать),  а  в   качестве самого  редактора  выберите  Channe l  Box/Layer Editor (Панель каналов/Редактор  слоев).

5.     Выбрав     категорию  Settings   (Параметры)   в       разделе    Workin g    Units (Используемые  единицы), в   качестве единицы   времени  (Time )  выберите NTS C [30 fps] (NTSC [30 кадров  в  секунду]). Эта частота кадров  подходит для телевидения.  При  работе с файлами, которые имеют разрешающую спо­ собность   кинопленки, следует   установить кинематографическую   частоту Film [24 fps] (Филь м [24 кадра в секунду]).

6.     В разделе Settings/Animatio n  (Параметры/Анимация)  установите  флажок Auto Key (Автоматическая установка ключевых кадров). В разделе Tangent s (Касательные) для параметров Default In Tangen t (Входящая касательная по умолчанию)  и Default Out Tangen t (Исходящая касательная по умолчанию) выберите значение  Clampe d (С фиксацией).  Касательные и  их  связь с ани­ мацией   в Майя обсуждаются ниже, при  рассмотрении  редактора анимацион­ ных кривых (Graph Editor).

7.     Выбрав  категорию Settings/Timelin e (Параметры/Временная  шкала), уста­ новите   для  параметров  Playbac k  Start/End   (Начало/Конец воспроизведе­ ния)  значения 0 и   90 соответственно; а  для параметров Animatio n Start/En d (Начало/Конец анимации) — значения 0 и  120. Выберите для переключате­ ля  Height (Высота)  значение 1х  (Одна строка),  а для  переключателя Ke y Ticks (Отметки ключевых кадров) — значение Active (Активно).  Установите ширину отметки равной 2. В разделе Playbac k (Воспроизведение) установи-

те  параметр  Update  View  (Обновлять представление) в   значение Active  (Активно). Это  задаст  обновление только  текущего  представления, ускоряя  тем  самым  процесс воспроизведения   анимации.  Для  переключателя   Looping  (Зацикливание)  выберите значение Continuou s  (Непрерывно), для  параметра  Playbac k  Spee d  (Скорость  вос­ произведения)  — значение real-tim e [30 fps ]  (В реальном  времени  [30 кадров  в  се­ кунду]).  Все  это  обеспечит наиболее  точные  параметры  воспроизведения  рассматри­ ваемого файла.  Не  забывайте,  что  при  наличии  импортированного  и   воспроизводи­ мого   звукового   сопровождения   следует   использовать  именно  реальный   масштаб времени.

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

Отскакивающий мяч

Создание отскакивающего мяча кажется  простой  задачей,  однако  это не просто  переме­ щение мяча вверх и вниз  с одновременным  его масштабированием. Файл  BallSetup .m b содержит относительно простую  сцену,  в  которой  можно разделять движение относительно различных   осей,   а   также   использовать  предоставляемый    Maya    деформатор    сжатия (squash deformer)  для создания более  убедительного  деформирования мяча  при  отскоках. Давайте реализуем отскок.

1.    Установите индикатор текущего  времени на кадр  1.

2.    Выделите  кривую ControlBoxCrv, а  затем   щелчком   мыши   выделите   атрибут Bounce_Down_Up. Этот атрибут связан с каналом translateY управляющим вер­ тикальным движением  мяча группы  UpDnGrp. Более  подробная  информация о свя­ зывании  атрибутов  приведена в  главе 8, "Постановка  и  оснащение персонажа".

3.    Чтобы   переместить  мяч  вверх по  оси   Y,   щелкните  в   области   просмотра   средней кнопкой  мыши  справа от  мяча  и  перемещайте  его  до  тех  пор,  пока  в  поле  атрибута Bounce_Down_U p не отобразится значение 7.

4.    Щелкните правой кнопкой  мыши  на атрибуте Bounce_Down_U p и  в  появившемся контекстном   меню  выберите пункт  Key  Selecte d  (Установить  ключевой  кадр  для выбранного).  В  результате  ключевой  кадр  будет  установлен  для  данного  специаль­ ного атрибута  (custom Attribute).  Теперь  кадр 7 должен  иметь оранжевый фон, озна­ чающий, что его атрибут участвует в  анимации.

5.    Перейдите к кадру  15, щелкнув на нем.

6.    Так же как и на шаге 4, установите ключевой кадр для атрибута Bounce_Down_Up.

7.    Перейдите к кадру 8.

8.    Установите значение атрибута Bounce_Down_U p равным 0. Поскольку  кнопка Aut o Key  (Автоматическая установка  ключевых кадров) нажата  (кнопка  с  красным  клю­ чом  справа), при  изменении  значения атрибута ключевой кадр  будет  установлен ав­ томатически.

9.    Воспроизведите анимацию вручную (с помощью  ползунка  времени).

10. Нажав  клавишу  <Shift>, выделите  мышью на ползунке времени  кадры от  1  до  14, чтобы выделить этот диапазон  (рис. 7.4).

11. . Чтобы ограничить  ползунок времени  периодом отскока мяча, щелкните на  нем пра­ вой кнопкой мыши  и  в  появившемся  контекстном меню выберите  пункт Set rang e To => Selecte d (Установить диапазон равным => Выбранному).

12. Чтобы просмотреть анимацию, щелкните на кнопке Play Forwar d (Воспроизводить в прямом направлении).  Чтобы остановить  воспроизведение,  либо еще раз  щелкните на той же самой кнопке (которая теперь стала  кнопкой Sto p Play (Остановить  вос­ произведение)), либо нажмите клавишу <Esc>.

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

1.    На ползунке времени  перейдите к кадру 2.

2.    Выделите атрибут Bounce_Down_U p кривой ControlBoxCr v и, чтобы установить на этом кадре разделяющий ключевой кадр, щелкните на атрибуте  правой кнопкой мыши  и   в   появившемся  контекстном  меню  выберите  пункт  Breakdow n  Selecte d  (Установить разделяющий  ключевой кадр для  выбранного). При  этом отметка соот­ ветствующего ключевого  кадра на ползунке времени станет зеленой.

3.    Чтобы  выделить разделяющий ключевой кадр,  выделите кадр  2,  нажав   клавишу

Рис. 7.10. Изменение кривой для придания отскоку мяча большего толчка

5.    Чтобы  включить   привязку ко  времени, щелкните на  кнопке  Tim e   Sna p   On/Off  (Включить/Выключить   привязку по  времени).  Это  гарантирует,  что все  ключевые  кадры  будут  привязаны  к  целочисленным значениям  кадров, что  в   данном  случае весьма полезно.

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

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

В качестве упражнения попытайтесь освободить  весовые коэффициенты  касательных указанных разделяющих ключевых кадров  и  переместить их  вверх  на графике; затем пе­ реместите тангенциальные манипуляторы касательных  вниз,  где  они  были  перед этим. Но  сначала  поместите в    буфер  копию   кривой. В  этом  случае,  используя команду Curves => Swa p Buffer Curve (Кривые => Заменить  кривую в буфере), можно будет посто­ янно переключаться  назад и  вперед между двумя кривыми  в  буфере, чтобы увидеть эф­ фект от изменений.

Добавим растяжение и сжатие  

К сожалению, подпрыгивающему  мячику не хватает реализма,  делающего ани- мацию  наглядной и  интересной. Поэтому придадим мячику  некоторые элементы растяжения  и     сжатия,  которые   сделают   анимацию    более   реалистичной. Ball – SquashStretch кривой ControlBoxCr v — это дополнительный  атрибут,  связанный установленным управляемым  ключом  с деформирующим  мяч нелинейным деформато- ром сжатия.  Используем этот атрибут, чтобы деформировать  мяч, придав  при  этом от­ скоку некоторое дополнительное   преувеличение или  удар.  Создайте сжатие и  растяже­ ние   так,  как  описано ниже.  Откройте  имеющийся на   компакт-диске файл  Ball –

BounceOlSquashStart.mb, и приступим.

1.   Чтобы  видеть, как  формируется кривая   по  мере  изменения значения   атрибута

BallSquashStretch, убедитесь, что редактор анимационных кривых открыт.

2.   Перейдите к кадру 1.

3.   Выделите атрибут BallSquashStretc h и  установите  ключевой кадр  только для этого атрибута.

4.    Немного сожмите мяч,  перемещая по  области  просмотра мышь с  нажатой  средней кнопкой до тех пор, пока в поле вывода атрибута BallSquashStretc h не появится значение – 0.6.

5.    Нажав  клавишу  <К> ,  щелкните средней  кнопкой  мыши  на  кадре  21  в  редакторе анимационных  кривых.

6.     Установите ключевой кадр для атрибута BallSquashStretch . Перемещение мыши с нажатой средней кнопкой и  одновременно нажатой клавишей <К >  изменяет инди­ катор текущего времени,  не изменяя при  этом ни  область  просмотра, ни  значения в панели  каналов. Поэтому установка ключевого кадра на  кадре 21  по существу копи­ рует кадр 1 в этот кадр.

7.     Перейдите к кадру 7, на котором был установлен разделяющий ключевой кадр, и  ус­ тановите значение атрибута BallSquashStretc h равным 0. Мяч станет совершен­ но круглым.

8.     Нажав  клавишу  <К> ,  щелкните средней кнопкой  мыши  на кадре  15  и  установите ключевой кадр на канале атрибута BallSquashStretch.

9.     Перейдите к кадру 10 (кадр перед ударом мяча о землю) и  растяните мяч,  установив значение атрибута BallSquashStretc h примерно равным 1. 6.

10.  Нажав  клавишу <К> ,  щелкните средней  кнопкой  мыши  на  кадре  13.   Установите ключевой кадр на канале BallSquashStretch, чтобы скопировать в этот кадр его значение из кадра 11.

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

12.  Сожмите мяч, установив значение атрибута BallSquashStretc h равным -1. 6.

13.  Чтобы кривая   в течение анимации  повторялась бесконечно, в  редакторе анимацион­ ных  кривых   выберите   пункт  меню  Curves =>  Post  lnfinity  =>  Cycle  (Кривые   => Постбесконечность => Цикл).

14.  Чтобы сгладить  кривую, выделите начальный и  конечный ключевые кадры  атрибута BallSquashStretc h и   установите  для  них  параметр Tangent s  (Касательные) в значение Flat (Горизонтально).

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

16.  Сохраните получившийся  файл.

О Т К Л О Н И М его немного от вертикали!  

Следующее планируемое  действие выходит за рамки реальности:  отклоним в  от- скоке мяч от вертикали, используя  атрибут Lean_Bck_Fw d кривой Control – BoxCrv. Это придаст мячу такой вид, как будто он поднимает себя в  воздухе. Но в  пер­ вую  очередь,  чтобы  можно  было  правильно  установить  отклонение, необходимо  пере­ местить мяч вперед. Продолжите работу с файлом, созданным ранее, или откройте файл

BallBounceOlLeanStart.mb.

1. В  панели  каналов  на кадре  1  установите  ключевой кадр  для  атрибута Control –

BoxCrv.translateZ .

2. Переместите  индикатор текущего времени на кадр 63.

Точечная форма записи  (.) позволяет быстро указать конкретный канал  конкретного объекта. Таким образом, "установите ключевой кадр для  атрибута  ControlBoxCrv . translateZ" озна­ чает:  "Выделите объект  ControlBoxCrv.  Затем  в   панели   каналов   щелкните на   атрибуте translateZ, щелкните на нем  правой кнопкой мыши  и  в  появившемся  контекстном меню выбе­ рите пункт Key Selected (Установить ключевой кадр для выбранного)".

3.    Перемещайте кривую ControlBoxCr v вперед по оси Z до тех пор, пока значение со­ ответствующего канала  не   станет  равным  8. При   нажатой   кнопке  Aut o   Ke y  (Автоматическая  установка ключевых  кадров) ключевой кадр будет установлен ав­ томатически. Если  этого  не  произошло, установите ключевой кадр  для  атрибута translateZ. А затем щелкните на кнопке Aut o Key.

4.     Вернитесь к кадру 1. Обратите  внимание, что на ползунке времени  видны  все ключе­ вые кадры. Используем это далее как преимущество.

5.    Установите ключевой кадр на канале ControlBoxCrv.Lean_Bck_Fwd, значение которого должно быть равным 0.

6.    Перейдите к кадру 6 или 7. Так как мяч опускается в падении,   отклоните его немного назад, установив значение атрибута Lean_Bck_Fw d равным примерно -8.5.

7.    Перейдите к  кадру  10,  который  непосредственно предшествует  отскоку  и   моменту наибольшего растяжения, и   подчеркните отклонение,  установив  значение атрибута Lean_Bck_Fw d равным примерно -9.

8.    В кадре 11, где происходит удар, установите значение атрибута Lean_Bck_Fw d рав­ ным 0.

9.    В кадре 12 отклоните мяч вперед, установив значение атрибута Lean_Bck_Fw d рав­ ным 9.

10.  В кадре 15 установите значение атрибута Lean_Bck_Fw d равным примерно 16.

11.  . В кадре 21 завершите  движение, установив  значение атрибута  Lean_Bck_Fw d рав­ ным 0.

12.  В  редакторе  анимационных  кривых выделите кривую атрибута  Lean_Bck_Fwd, щелкнув  на ней в  области  просмотра левой кнопкой  мыши, и  выберите пункт меню Curves => Post infinity => Cycle (Кривые => Постбесконечность => Цикл).

13.  Выберите для этой кривой пункт  меню Vie w => Infinity (Вид => Бесконечность).

14.  Чтобы увидеть результат, воспроизведите получившуюся  анимацию.

Он… ОЖИЛ !  Действительно,  внесенные здесь изменения  превратили  анимацию  от­ скакивающего  мячика из  скучного механического   движения в  эластичный, полный ин­ дивидуальности  реалистичный  виртуальный  объект.  Увеличение  отклонения (т.е. атри­ бута Lean_Bck_Fwd ) на восходящей стороне прыжка сделало отклонение мяча на подъ­ еме   прямым,    подчеркивая  поднятие   на    вершине  отскока.    Манипулируя этими значениями,  измените величину отклонения;   возможно, результат удастся улучшить.

Источник: Кундерт-Гиббс, Джон,  Ларкинс, Майк,  Деракшани, Дариус, Кунзендорф, Эрик,  и др., Освоение Maya  8.5.:  Пер.  с англ.  – М.:  ООО  «И.Д.  Вильямс», 2007.  – 928  с.:  ил.

По теме:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий