Вторник, 18 Мая 2021, 08:08

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: beril  
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Урок по Mecanim новой системе анимаций
Урок по Mecanim новой системе анимаций
IL-98-YAДата: Четверг, 10 Января 2013, 17:05 | Сообщение # 1
UnityUser
Сейчас нет на сайте
Всем привет, я решил попробовать написать урок, и решил написать его по меканиму (новой системе анимаций в Unity3D). На первый взгляд, она кажется достаточно неудобной, соглашусь, мне лично, было легче писать «animation.CrossFade» или «animation.Play” , однако, с меканимом, можно делать анимации, и не писать физическое управление! Что существенно облегчит нам жизнь, итак приступим.

Для начала запустим Unity3D и создадим там сцену:



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



После этого, у нас откроется Inspector:



Если вы не во вкладке “Animations”, то перейдите в нее и снимите галочку с “Import Animation”



Дальше, нужно настроить скелет у модели, для этого перейдите в вкладку “Rig”



Изначально, у вас должна появится эта картина, меняем ”Animation Type” с “Generic” на “Humanoid” , а в “Avatar Definition” выбрать “Create from this model”, в общем, все должно быть вот так:



Далее нажимаем Configure:



После чего, у нас откроется настройка скелета, на модели, все кости будут видны в окне редактора, они будут зелеными, а так же, в инспекторе появится окно с человечком, под человечком будут показаны все кости, с их названием:



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



Это было в моем случае, здесь мы видим, что скелет не может найти кость головы, для того чтобы ее было проще вставить, переходим в настройки головы, для этого нажимаем, на кнопку “Head”, что в колонке кнопок, которые находятся в левом нижнем углу, в общем кликнем вот сюда:



После чего, мы увидим, следующее окно в инспекторе:



Как мы видим, у нас есть только шея, кость головы не найдена, а ведь эта кость отвечает за все движения головы! Находим ее, и перетаскиваем в поле Head, после того как мы перенесли голова стала зеленой:



Нажмите на Pose, и там нажмите Enforce T-Pose:



Это поставит наш персонаж в T-Pose, что есть начальная поза, дальше можете пройти во вкладку Muscles и поиздеваться над своим персонажем, а когда вам это надоест, нажмите Apply, а потом Done. Все Персонаж настроен, теперь, перейдем к настройке анимаций, она в разы легче, чем настройка персонажа, нажмите на любую анимацию:



Тут уже должна стоять галочка напротив Import Animation, далее идем в Rig, там будет та же картина , что и с настройкой персонажа… мы опять нажимаем Humanoid, но на этот раз, мы не создаем с этой модели, а копируем с игрока, т.е. мы берем настройки для “Avatar” игрока, и копируем их для каждой анимации, для этого вместо «Create from This Model», выбираем «Copy from another Avatar», и перетаскиваем в появившееся поле “Source” Avatar игрока, можно просто выбрать его нажав на кружок в поле справа. Картина должна получится такая:



Так делаем с каждой анимацией.
С подготовкой персонажа закончили, теперь переходим к настройке в игре!

Для начала нужно создать файл AnimatorController:



после чего перетянем персонажа на сцену, и кликнем на него, откроем его настройки, там будет компонент “Animator”, в нем будет Controller, туда нужно будет перетащить, нами только что созданный AnimatorController:



Далее идем в Window>Animator:



У нас появится окно с настройками анимаций, там будет “Any State” его трогать, смысла нет, он нам ничего не даст, просто перетяните туда анимацию, например я перетянул анимацию IDLE, ВНИМАНИЕ: ИМЕННО АНИМАЦИЮ, А НЕ МОДЕЛЬ!!!



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



Она серого, цвета, это говорит о том, что она не главная анимация, а второстепенная, теперь, нужно переключать эти две анимации! Для этого создадим параметр Float:



Назовите его Direction, Дальше создаем скрипт:



Назовите его AnimControll.cs , дальше я выложу просто скриншот скрипта с комментариями, надеюсь, они будут вам понятны, если же они будут непонятны, то вы можете задать вопрос в теме:



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



ах да, забыл, еще нужно создать условия для перехода из одного в другое, для этого кликнем по IDLE в аниматоре и нажмем Make Transition, делайте все как на картинке:



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

КАК И ОБЕЩАЛ ССЫЛКА НА ПРИМЕР:
скачать с narod
извиняюсь за некоторые лишние файлы... и корявенькую анимацию, я не очень хороший аниматор :-)

Добавлено (10.01.2013, 17:05)
---------------------------------------------
извиняюсь, что пропустил создание условий... happy





Сообщение отредактировал IL-98-YA - Понедельник, 14 Января 2013, 00:27
XeoDozДата: Четверг, 10 Января 2013, 17:25 | Сообщение # 2
XeoDoz Games
Сейчас нет на сайте
Красава! Лови плюс.


Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco
Очень рад плюсеГгам в репу
IL-98-YAДата: Четверг, 10 Января 2013, 17:29 | Сообщение # 3
UnityUser
Сейчас нет на сайте
Цитата (XeoDoz)
Красава! Лови плюс.

спасибо smile





Сообщение отредактировал IL-98-YA - Четверг, 10 Января 2013, 17:30
DemixДата: Четверг, 10 Января 2013, 17:37 | Сообщение # 4
Pixel Fire Software™
Сейчас нет на сайте
Хороший урок!

Мои проекты:
Spell Castle Bricks [Android]
O'er! [Android]
IL-98-YAДата: Четверг, 10 Января 2013, 17:38 | Сообщение # 5
UnityUser
Сейчас нет на сайте
Цитата (Demix)
Хороший урок!

спасибо smile



Nekit_AutДата: Четверг, 10 Января 2013, 17:51 | Сообщение # 6
The Dizziness - Man
Сейчас нет на сайте
Отлично! Поможет многим разобраться с этим нововведением в движке)

IL-98-YAДата: Понедельник, 14 Января 2013, 00:29 | Сообщение # 7
UnityUser
Сейчас нет на сайте
Цитата (Nekit_Aut)
Отлично! Поможет многим разобраться с этим нововведением в движке)

Спасибо smile

Добавлено (14.01.2013, 00:29)
---------------------------------------------
Добавил пример happy



Eyks001Дата: Вторник, 22 Января 2013, 10:44 | Сообщение # 8
Эйкс. Просто Эйкс.
Сейчас нет на сайте
Я от лица многих новичков задаю вопрос: как быть с нестандартным персонажем?


"Счастье для всех, даром, и пусть никто не уйдет обиженный!" - Рэд Шухарт
("Пикник на обочине", Стругацкие А. и Б.)
***

Извиняюсь за часто появляющиеся "оЧеПЯтки", виной тому моя невнимательность...
giperionДата: Вторник, 22 Января 2013, 12:22 | Сообщение # 9
участник
Сейчас нет на сайте
Урок "хороший", но не отличный. Многие скользкие моменты упущены, такие как: работа с анимацией которая сделана In-place, реализация плавного прыжка, не рассмотрены типы ригов.

Цитата (Eyks001)
Я от лица многих новичков задаю вопрос: как быть с нестандартным персонажем?

Отвечаю: Humanoid риг - условность. У рига может быть разное количество костей или немного другое строение, но главное чтобы были соблюдены некоторые правила оформления (к сожалению расписать немогу - долго, да и большую часть я познал через эксперименты). Если же персонаж ну совсем уникальный, то можно использовать Generic тип рига. Просто это значит, что Generic анимация не может быть применима к хуманойдному ригу (основная концепция Mecanim - все гуманойды имеют общую базу анимации, и каждый из них может воспользоваться анимацией из другой модели, опять таки только Humanoid'ного рига).
Однако даже Generic анимация может быть смешана и обработана с помощью Mecanim.

А вообще если меня сильно попросят - могу написать детальный учебник-туториал по меканим, с некоторыми исходниками (моим ригом для Mecanim).


Skype: sergej_1965
BizzyДата: Вторник, 22 Января 2013, 17:27 | Сообщение # 10
постоянный участник
Сейчас нет на сайте
"А вообще если меня сильно попросят" по подробней плз. smile А вообще было бы замечательно если напишеш.

IL-98-YAДата: Четверг, 31 Января 2013, 03:49 | Сообщение # 11
UnityUser
Сейчас нет на сайте
Цитата (Eyks001)
Я от лица многих новичков задаю вопрос: как быть с нестандартным персонажем?

я же в скайпе тебе объяснил smile



[SK]xakepДата: Вторник, 05 Марта 2013, 13:05 | Сообщение # 12
был не раз
Сейчас нет на сайте
Отличный урок давно хотел разобраться с этой систменой smile

Нет предела совершеству ^^

NeToXДата: Вторник, 05 Марта 2013, 17:41 | Сообщение # 13
Neto Software
Сейчас нет на сайте
Классный урок.



Мои проекты:
[3D]Square World[API VK]
[3D]Dead Prison[Windows]
[2D]Save Fruit[Android,windows]
ШкольникДата: Вторник, 05 Марта 2013, 18:14 | Сообщение # 14
был не раз
Сейчас нет на сайте
шрефты гавно
IL-98-YAДата: Пятница, 08 Марта 2013, 05:41 | Сообщение # 15
UnityUser
Сейчас нет на сайте
Цитата (Школьник)
шрефты гавно


эм... эт ты к чему?

Цитата (NeToX)
Классный урок.


спасибо

Цитата (|SK|xakep)
Отличный урок давно хотел разобраться с этой систменой


рад был стараться smile





Сообщение отредактировал IL-98-YA - Пятница, 08 Марта 2013, 05:42
slavickДата: Четверг, 10 Октября 2013, 07:57 | Сообщение # 16
частый гость
Сейчас нет на сайте
Помогите в Скрипте постоянно ошибка вылетает
Код
Assets/AnimContols.cs(16,9): error CS8025: Parsing error

Хотя я написал 100% все правильно со скрина sad


seamanДата: Четверг, 10 Октября 2013, 13:53 | Сообщение # 17
старожил
Сейчас нет на сайте
Класс! Мы, конечно польщены, что Вы нас экстрасенсами считаете. Однако это, к сожалению не так. без скрипта Вашего мы Вам никак не поможем.
IL-98-YAДата: Четверг, 10 Октября 2013, 18:23 | Сообщение # 18
UnityUser
Сейчас нет на сайте
slavick, Здравствуйте, будьте добры дать полный скрипт smile , так же, свертесь со скриптом из билда ссылку на который я дал...


nwsxДата: Четверг, 10 Октября 2013, 19:16 | Сообщение # 19
постоянный участник
Сейчас нет на сайте
у юнити есть официальный туториал по механиму. каков был смысл делать этот? biggrin

Westboro
Dungeon Journey на Google Play
seamanДата: Четверг, 10 Октября 2013, 19:22 | Сообщение # 20
старожил
Сейчас нет на сайте
Хорош троллить во всех темах.
Не нужен Вам урок - не читайте. А то как старушка - "Фу какую гадость по телику показывают", а саму от экрана не оторвать.
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Урок по Mecanim новой системе анимаций
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2021 Рейтинг