Урок про скелетную анимацию - 3D RAD - Конструкторы игр, системы разработки игр
Навигация по сайту
Сайт:

Дополнительно:

Файловый архив:

Каталог статей:

Форум:


Категории раздела
Game Maker [27]
Flash [3]
FPS Creator X9, X10 [1]
Scirra Construct [14]
Multimedia Fusion [0]
001 Game Maker, Map 001 [0]
3D RAD [16]
3D Game Studio [1]
Silent Walk FPS Creator [0]
Blender (Блендер) [1]
Game Editor [0]
Остальное [1]
Все остальное, что не попадает ни под одну категорию.

Мини-Опрос
Какой платформой Вы пользуетесь?
Всего ответов: 914

Партнеры сайта
....

Урок про скелетную анимацию

12:36
Всем привет,сегодняшняя тема урока - костная анимация.Ранее в этом же разделе был урок по FBF (Frame By Frame) анимации - что означало по
кадровая анимация.Сегодня мы разберем новый вид анимаций -более распространенный и более удобный в использовании и совместимый с кодом и скриптами - скелетный.В чем же превосходство скелетной анимации и недостаток FBF анимации ,сегодня мы это и узнаем. Так как наша тема непосредственно связанна с игровым двигателем 3d Rad все недостатки и преимущества мы будем рассматривать именно на двигателе.Начнем с FBF:

По кадровая анимация имеет ряд крупных недостатков в списке которых значится : оптимизация , лаги , низкий параметр FPS , отрицательное
влияние на другие объекты , большой вес
.При использовании такой анимации ваш проект будет много - очень много весить,анимация требует
хирургической точности и плотного подхода иначе как результат мы увидим за место анимации некачественное слайд шоу , ибо анимация не переходит в положение следующего кадра а лишь "перескакивает" на него и следующим кадром анимации требуется создавать каждое движение в плоть до миллиметра , а значит что количество кадров на стандартную небольшую анимацию будет не менее 30-40 , каждый кадр имеет вес в округе 1-3 и выше мб , что значит что на стандартную небольшую анимацию например бега придется затратить большое количество времени что уходит не только на обработку каждого кадра но и на процесс конвертирования общий вес уже будет составлять до сотни а то и больше мб . Вес непременно сильно скажется и на качестве и на оптимизации проекта так как двигателю придется считывать буквально каждый кадр , а в нашем случае каждый кадр это отдельная модель , 3d rad придется просчитывать буквально сотни и тысячи кадров , что значит что проект будет тормозить даже на самых топовых и мощных машинах . У FBF анимации есть еще тонны минусов и один из единственных плюсов это простота в использовании и эксплуатации.Не требуя огромных затрат такая анимация может создаваться в небольших проектах с малым количеством объектов и низкополигонными моделями.

Теперь перейдем непосредственно к разбору костной (скелетной) анимации,в первые костная анимация использовалась в 1998 году на модернизированном двигателе игры Quake от iD Software что использовался во время создания первой игры Half life , новая технология позволила создавать невозможное особенно на тот промежуток времени когда технологии были не столь развиты . Фактически Джон Кармак дал компьютерным технологиям большой скачек в развитии , именно после ошеломительного успеха Half Life технология стала активно использоваться во всех отраслях промышленности и не только игровой , фильмы , мультипликации , современная индустрия требовала этого скачка . Сейчас на дворе 2013 год и данная технология до сих пор используется во всех отраслях и весьма успешно . Суть скелетной анимации заключается в создании связанных между собой точек образующих в месте некое подобие скелета который непосредственно связан с высотами модели , а если быть более точным то с каждой отдельной группой высот . При изменении положения определенных точек скелета изменяется и положение привязанной к этой точке группе высот модели , все вместе образует плавную и качественную анимацию , с правильной настройкой
привязки скелета еще и бесшовную .

Двигатель 3d rad успешно оптимизирован и приспособлен для эксплуатации обоих подвидов анимации , плюсы и минусы которых мы разобрали выше . Теперь перейдем непосредственно к теме урока ,  самый удобный способ , через Fragmotion . Наша цель создание качественной анимации и наш урок будет разбит на несколько пунктов и начнем мы по порядку.

0) Основы программы:
Открывая интерфейс Fragmotion нужно учитывать мелкие нюансы управления программой , их всего несколько и запомнить их легко :
Управление камерой осуществляется на правую кнопку мыши . За действие и выделение отвечает левая кнопка мыши . Нижний правый угол располагает по умолчанию в себе вкладку с Tools (инструменты).Инструменты управления камерой:
 - Rotate Camera (Повернуть камеру) отвечает за поворот камеры вокруг
модели.
 - Zoom Camera (Приблизить камеру) отвечает за приближение и отдаление
камеры от модели.
 - Movie Camera (Двигать камеру) отвечает за движение камеры по сцене по
отношению к модели.

Чуть правее есть дополнительные вкладки , они отвечают за костюмизацию панели :
 - Restore Tools (Перезапустить инструменты), отвечает за упорядочивание
инструментов.
 - Show Tree (Показать древо) , отвечает за вид показа инструментов , в
виде стандартного древа таблицы или же в виде списка .
 - Customize Toolbox (Костюмизировать панель инструментов) , это меню
настроек в котором мы можем настроить порядок инструментов в древе
инструментов .
 - Select ToolList (Выбрать панель инструментов) , это меню создания
нового , выбора старых если нужно порядков расположений инструментов в
панели инструментов .
 - Select PreviosTool (Выбрать предыдущий инструмент)/Select Next Tool
(Выбрать следующий инструмент) , это быстрый выбор предыдущего или
следующего инструмента выбора .

Таким образом мы разобрались с основной панелью которую мы будем использовать во Fragmotion,теперь приступим?

1) Создание скелета:
Открывая нашу модель в Fragmotion находим в нижнем правом углу панель с различными вкладками , такими как Tools и другие - Tools (инструменты) нам и нужен . Находим в нем подпункт Create (создать) а в нем пункт Bone (кость).

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

2) Анимация
А теперь началась самая сложная часть - Анимация . Для этого нам понадобятся новые инструменты работы - такие как :
Keyframe Editor
Keyframe Sliders
Нажимаем на клавиатуре комбинации клавиш :
Alt + 0
Alt + -

На экране Fragmotion в интерфейсе появились 2 заметных окна :

Это Keyframe Editor (Редактор кадровых ключей) который отвечает за редактирования позиции положения и количества кадров на шкалу времени. Фактически это и есть наша анимация , ну почти , тут мы будем фиксировать абсолютно каждое наше движение и действие по отношению к костям модели.


Эта панель называется Keyframe Sliders и отвечает за все движения производимые моделью во время анимации , во время создания анимации мы
будем использовать именно этот инструмент . Он поворачивает (rotate)
кость по координатам x ; y  ; z , а так же передвигает (move) кость по тем же координатам через слайдеры (sliders) от того и название инструмента (Слайдеры кадровых ключей) .

Открываем вкладку Bone в верхнем углу интерфейса Fragmotion  И выбираем подпункт Auto Assigin Vertices (Автоматическое присоединение высот) и в следующем окне жмем OK оставляя все пункты без измениений, данная функция присоединяет все высоты к костям автоматически при сканировании модели. Это начальный этап который является самым удобным но и не самым правильным . В последующих действиях мы поймем почему же. Для начала создадим анимацию , в верхнем правом углу есть панель Animations , по клику правой кнопкой мыши вызовем меню выбора в котором выбираем подпункт меню New -> Animation . После в древе появится пункт Animation который мы должны выбрать кликом левой кнопки мыши , после сего действа на Keyframe Editor появится шкала времени и дополнительные линии а так же откроется боковое окошко обозначающее выделенные кости и список а так же и их изменения . Находим значек
 (Create Frame - Создать Кадр) и используя этот инструмент выберем нужный промежуток на шкале времени и создадим первый кадр (шкала времени это синяя полоса в виде линейки с делениями , в Fragmotion эти деления обозначают время и шкалу времени)  Создав первый кадр и выделив его на шкале времени  кликом правой кнопки мыши выходим на основной интерфейс Fragmotion и используя инструмент в подменю Tools , Select -> Bone (Выделить -> Кость) выделяем нужные нам кости и с помощью Keyframe Sliders двигаем или крутим кость в нужном нам направлении , затем в
Keyframe Editor через несколько делений (секунд) создадим новый кадр и
добавим через Keyframe Sliders дополнительные изменения и так до тех пор пока не получим нужной анимации. Выглядит просто если ваша модель не высокополигональна и не имеет близких друг к другу граней , иначе ошибка наша заключится в том что при движении определенной части кости будут двигаться и другие высоты и части модели которые не должны быть , например при повороте руки будет двигаться и например кусок тела что вообще ни в какие рамки не катит , по сему мы должны перед созданием анимации всегда проверять модель на то правильно ли инструмент автоматического присоединения высот (Auto Assigin Vertices) присоеденил именно нужные нам высоты именно к нужной части модели и именно правильным образом . Итак что же делать в такой ситуации - вот тут то нам и придется поработать ручками. используем инструмент выделения высот (Select Vertex) который находится в панели инструментов (Tools) во вкладке выделения (Select) , используя этот инструмент мы можем выделять нужные нам высоты . Итак самая трудная часть , нам нужно правильно распределить высоты по нужным видам костей (Bone) и исправить нашу ошибку , выделяем неправильные высоты на модели (их может быть очень много но придется) через клавишу Shift . После того как мы выделили нужную нам неправильную группу высот пользуясь инструментом Assigin Selected Verices to Bone (Присоеденить выделенные высоты к кости) открываем окно в котором есть куча пунктов и шкала .

Шкала эта называется шкалой присоединения , она отвечает за дистанцию присоединения высот к кости - эту шкалу мы всегда ставим на красный
уровень (максимальное присоединение) иначе присоединение будет частичным и неправильным - высоты будут вылезать . Выше шкалы есть пункт Bone (Кость) и подменю в котором мы должны выбрать кость нейтральную к которой можно присоеденить высоты , то есть мы переводим ненужные здесь высоты на другую кость при движении которой должны двигаться эти высоты. После нахождения такой кости жмем на правое окошко,на пункт с другой костью (это та кость к которой на данный момент присоединена высота) . И теперь жмем Set (Применить) . Старая кость заменилась на новую а неправильные высоты встали на место. Мы скорректировали неправильное положение высот из за автоматического присоединения высот . Эту же процедуру корректировки придется провести со всеми костями - процедура долгая и может занять много времени .
После создания анимации выбираем File -> Export
Выбираем формат DirectX и скидываем в папку с нашей моделью , настройки не меняем =0
Спасибо за внимание,удачи всем !

Категория: 3D RAD | Просмотров: 4203 | Добавил: _¿_ (22.03.2013) | Рейтинг: 5.0/1
Теги: история, Fragmotion, 3d Rad
HTML ссылка на материал:
BB ссылка на материал:
Похожие материалы :
Возможно вам будет интересно:
Borland Assembler (BASM) уроки для начинающих (урок 7 часть 1) (0)
Как рисовать спрайты в DXDraw DelphiX (0)
Что с чем едят - 3d Rad (0)
Создаем платформер. Scirra Construct (4)
Создание многопользовательской(online) игры на Game Maker. (часть 1) (0)
Сохранение и чекпоинты (0)
Наглядный пример использования переменных (0)
Физика (Blitz 3D) (0)
статьи по Yogurt3D (0)
3D Rad - делаем компас. (0)
startDrag или как заставить объект двигаться за мышью? (0)
Немного о секретах озвучки. (2)
Полиморфизм, Инкапсуляция и Наследование (0)
Знакомство с Движком! (0)
Экономика в ммо (2)
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Мы в социальных сетях

Поиск
Поиск по всему сайту:
Поиск по разделу:

Панель пользователя
Здравствуйте, Гость


Ник:
Пароль:
Запомнить :

Ваш IP: 54.205.213.75

Случайные конструкторы

Случайные движки

Случайные статьи

Статистика
Онлайн всего: 4
Гостей: 4
Пользователей: 0

На сайте были:
Sainzan , proto1ype , polekhomri88

При полном или частичном копировании материалов сайта ссылка на Make-Games.ru обязательна. Make-Games.ru © 2008 - 2016 Хостинг от uWeb
Топ Разработка игр Рейтинг@Mail.ru