Показаны сообщения с ярлыком позы. Показать все сообщения
Показаны сообщения с ярлыком позы. Показать все сообщения

вторник, 28 октября 2008 г.

Анимации - это просто! Часть 2.

Продолжая цикл статей, посвященных анимации, сегодня мы расскажем, что такое Pose Stand и Animation Overrider (AO), а также как их изготовить самостоятельно в домашних условиях.




Pose Stand является устройством, которое позволяет проделывать массу полезных вещей с вашим аватаром. Например, используя его, вы можете подогнать парик, обувь и т.п. по размеру вашего персонажа, или же устроить ему фотосессию, используя всевозможные позы, или, на худой конец, просто испытать ваши анимации. А если pose stand научить принимать деньги и раздавать товар, то вот вам и вендор для продажи ваших анимаций.

Итак, берем три прима и делаем основу нашего pose stand.



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

Для начала запрограммируем кнопки, чтобы они хоть что-то переключали в дальнейшем. Поскольку объект у нас получается слинкованный, то воспольуемся системой передачи данных внутри объекта - llMessageLinked(). Заходим в режим редактирования и ставим галку Edit Linked Parts. Это позволит нам редактировать отдельный прим слинкованного объекта. Поставив нужную галку, тыкаем мышой в кнопку, ну, пусть это будет кнопка "НАЗАД" (которая слева). В ней нужно создать новый скрипт и написать в нем следующее:

default
{
touch_start(integer total_number)
{
if(llDetectedKey(0) == llGetOwner())
{
llMessageLinked(LINK_ROOT, 0, "bck", NULL_KEY);
}
}
}

То же самое нужно проделать и со второй кнопкой, заменить только параметр функции с "bck" на "fwd". Обратите внимание на проверку при нажатии - это сделано для того, чтобы все, кому не лень, нажимая из любопытства на всякие кнопочки, не мешали вам в вашей работе с позами.

Теперь переходим к самому основному - созданию скрипта, который будет во-первых, отслеживать, что вы загрузили в инвентарь pose stand'a, а во-вторых, по нажатию на кнопку, менять анимации на вашем аватаре. Находиться он должен в инвентаре основного, или рутового, прима. К сожалению, невозможно понятно и доступно отобразить код в рамках этого ресурса, поэтому я приготовил маленький подарок любителям методики copy&paste, который, надеюсь, заставит их пересмотреть свое отношение к этому вопросу.



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

Animation Overrider (AO) по сути представляет собой тот же pose stand, но является более интеллектуальным прибором, кроме того, прибором носимым, или гаджетом. Подробно рассматривать его устройство в рамках данной статьи мы не будем, поскольку сам по себе АО является довольно-таки сложным программным продуктом и, если будет интересно публике, я посвящу отдельную статью именно программированию АО и разбору тонкостей работы этого гаджета. Здесь же мы рассмотрим общий принцип замены анимаций, принцип работы АО, а также где его взять и как настроить для работы с тем набором анимаций, который есть у вас в наличии.

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

Кроме того, АО позволяет включать и проигрывать анимации независимо от состояния аватара. Например, вы можете запустить анимацию танца, в то время, когда ваш аватар просто стоит, но в другое время, когда танцевать не нужно, АО автоматически вернет все на свои места. Таким образом, работать с АО довольно-таки просто. Загружаете в него свои анимации, правите конфиг-нотекарту, одеваете АО на себя, включаете и отправляетесь вызывать жгучую зависть окружающих.

Теперь вопрос - где же взять АО? Тут есть несколько вариантов. Самый первых - купить где-нибудь. Как правило, производители анимаций кастомизируют АО под свой стиль, изменяя внешний вид, но по сути - гаджет остается все равно сам собой и реальная стоимость любого АО заключена только лишь в анимациях, которые заложены внутри него. Без них это просто "железка", какой бы навороченный дизайн она бы не имела. Как правило, такие продукты имеют право no modify и вы наврядли сможете их дополнять своими анимациями. Поэтому есть другой вариант - взять на крупнейшем отечественном фрибае Russian Worldware бесплатный АО от Ken Zhao с правами full perm и заняться его наполнением. Бесплатных АО множество, просто смотрите на их функционал. Самое распространенное бесплатное АО, которое и переделывают под свою продукцию практически все производители анимаций, выглядит следующим образом:



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

Удачных экспериментов! А в следующей, третьей части, я расскажу, что за зверь такой - Poser и как в нем делать динамические анимации. Также раскрою секрет изготовления практически любых "реалистичных" походок при помощи этого инструмента.

Manoul Carnell

Анимации - это просто. Часть 1.

Анимации - это просто! Часть 1.



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

Для начала расскажем о сути анимаций как таковых. Существует два понятия - анимация и поза. По сути и то и то является анимацией с той разницей, что в позе всего 2 кадра, нулевой и непосредственно кадр позы, который проигрывается "кольцом", в то время как полноценная анимация предполагает некую мультипликацию множества кадров. Каждый кадр содержит пространственное положение точек скелета аватара, которых насчитывается 23, последовательное перемещение которых со скоростью таймлайна (timeline) и дает тот самый эффект анимации.



SL распознает анимации в формате BVH (*.bvh, Biovision Hierarchy), с которым работают практически все программы, так или иначе имеющие дело с анимированием модели. В этой части мы рассмотрим простенькую, но весьма полезную программу - QAvimator, которая позволит вам сделать на скорую руку несложную анимацию и практически любую позу. Кроме того, эта программа позволяет добавлять к модели предметы, что позволит вам привязать свою анимацию к тем условиям, в которых она будет использоваться после экспорта в SL, например, анимация лыжника.



Итак, скачиваем, устанавливаем, запускаем и сразу делаем вот что: в верхней панели меню кликаем Options и в выпавшей вкладке ставим галки Sceleton (отобразятся узлы скелета на модели) и Show Timeline (отобразиться окно таймлайна - раскадровки).



Все, можно приступать к созданию анимации. Для начала, давайте создадим статичную позу. Выберите тип модели - женский или мужской, это можно сделать с правой стороны окна программы, параметр Figure, и начнем. Если кликнуть по какой-либо части тела, она выделиться бледно-красным цветом и вокруг нее появяться орбы координатных плоскостей. Двигая мышкой при нажатых клавишах Ctrl, Shift и Alt мы можем изменять положение выделенной части тела в пространстве.



Клавиша Ctrl включает поворот по оси Z (синий орб), Shift по оси X (красный орб), а Alt - по оси Y (зеленый орб). При нажатии той или иной клавиши орб, за который она отвечает, становится толще. Кроме того, на правой панели интерфейса программы в группе регуляторов Rotation можно задать точные координаты, либо ползунками изменять эти значения. К слову сказать, работа с мышкой не очень удобна, к ней надо попривыкнуть, поэтому поначалу рекомендуем пользоваться ползунками.

Масштабирование общего вида (камеры) в этой программе производиться следующим образом. Нужно нажать и держать левую кнопку мыши, кликнув ей по поверхности "пола" и, шевеля мышкой, изменzть плоскость обзора. Если вы хотите приближать, удалять и перемещать камеру вокруг модели, то проделайте то же самое, нажав и удерживая Alt.

Вы можете заметить, как, по мере изменения положения той ли иной части тела модели, на таймлайне появляются разные значки. Они означают, что вы что-то делали с той или иной точкой скелет и новое положение записано. Стоит знать вот какую маленькую хитрость. На самом деле на аватар действует одновременно несколько анимаций, поэтому, если какая-то точка скелета не задействована в вашей анимации, то она будет исполнять движение по курве (curve line), обозначенной другой действующей в этот момент анимации. Именно с этим связано "вставание" с диванов во время печатания и другие мало привлекательные и неожиданные действия, виной которым - незнание аниматорами этой особенности. Поэтому, даже если какие-то точки вы не используете, не поленитесь "протыкать" их для того, чтобы избежать досадных глюков.

Стоит обратить внимание вот еще на какой важный момент - позицию модели относительно земли. Задается она единственной частью тела - тазом. Выделите тазовую область (hip) и заметите, как на правой панели активировались ползунки блока Position. Именно эта часть скелета и определяет перемещение всей модели в пространстве, поэтому для того, чтобы сделать, скажем, сидящий аватар, нужно уменьшить значение координаты Y и т.п.

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



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

Итак, в нашей позе всего два кадра - нулевой и первый. Следовательно, в окошке в нижней части интерфейса программы указываем, что Frame 2 of 2 - таймлайн сразу же сократиться. В окошке Loop ставим двоечку - это со второго кадра и до конца будем непрерывно проигрывать наш ролик, т.е. всегда один кадр. Все, можно сохранять. Открываем верхнее меню программы File -> Save или же попросту нажимаем Ctrl-S и в открывшемся окне указываем имя файла. Обязательно укажите там и расширение *.bvh, потому что из-за какого-то глюка программа иначе его не добавляет сама.

Все, наша поза готова к загрузке в SL, однако стоит учесть, что и в загрузке есть некоторые нюансы, о которых нужно помнить. Итак, в клиенте нажимаем File -> Upload Animation и выбираем получившийся файл. В открывшемся окне предпросмотра следует обратить внимания вот на какие параметры: Loop - зацикливание, для поз ставится всегда; Priority - приоритет замены анимации, чем число больше, тем выше приоритет и ваша анимация будет играть вместо встроенной, если ее приоритет ниже; Hand Pose - положение кистей рук (кулак, открытая ладонь и т.п.) и Expression - выражение лица. Настроив и проверив все заливаем нашу анимацию в грид.



Использовать ее можно, вставив в Аnimation Оverrider или в Pose Stand, если они у вас есть. А если нет, то в следующей статье мы расскажем, как самостоятельно изготовить эти весьма полезные гаджеты. Всего в этом цикле выйдет три статьи, включая эту. "Часть 2" будет содержать в себе материал по изготовлению АО и PS, а также особенности проигрывания и останавливания анимаций на аватаре, ну а "Часть 3" будет посвящена целиком особенности изготовления мультипликационных анимаций в программе, название который в устах Великих Гуру наводит благоговейный страх на каждого - POSER. Однако, ничего страшного в нем нет и вы сами во всем убедитесь, читая наши материалы.

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

От автора: Ну а от себя могу добавить, что то, что если я сам не делаю анимаций и не торгую ими, так это означает, что это мне попросту не интересно. А раньше, бывало, делал, правда, на скорую руку по необходимости. Да и суть ли это? ;)


Manoul Carnell

Анимации - это просто. Часть 2.