Як анімувати персонажа Юніті 2д




Як анімувати персонажа Юніті 2д



Як зробити анімацію в юніті 2д

Бажаєте навчитися створювати анімацію в Unity 2D? У цій статті ви дізнаєтеся, як правильно налаштувати спрайти, створити анімаційний контролер і навчитися працювати з аніматором. Почніть створювати круті анімації для своїх ігор прямо зараз! Unity - це потужний двигун для розробки ігор, який використовується багатьма розробниками по всьому світу. Він надає безліч інструментів для створення та управління анімаціями у 2D та 3D. Анімація – це важлива частина будь-якої гри. Вона дозволяє створити реалістичні персонажі, динамічні та насичені подіями сцени, та додати душі та характеру до ігрового світу. У цій статті ми розглянемо, як створити анімацію в Unity 2D, від вивчення основ до створення більш складних та цікавих ефектів.

Завантажте та встановіть Unity

Unity – це ігрова платформа, яка дозволяє створювати ігри та інші інтерактивні програми для різних платформ, включаючи ПК, мобільні пристрої та веб. Перш ніж почати створювати анімацію в Unity 2D, необхідно завантажити та встановити саму програму.

Першим кроком потрібно перейти на офіційний сайт Unity та вибрати потрібну версію програми. Для початку роботи з Unity можуть підійти безкоштовні версії, наприклад Personal або Student. Після вибору потрібної версії, необхідно натиснути кнопку «Завантажити Unity», щоб розпочати завантаження.

Після завершення завантаження необхідно встановити Unity на свій комп'ютер. Для цього виберіть пункт «Встановити» та дотримуйтесь інструкцій на екрані. Під час встановлення можна вибрати, які компоненти Unity необхідні для роботи, та налаштувати відповідні параметри. Після встановлення Unity можна запускати і починати створювати анімацію в Unity 2D.

Створіть новий проект Unity

Перш ніж розпочати створення анімації в Unity, необхідно створити новий проект. Для цього запустіть Unity і виберіть New Project в меню File. Вкажіть ім'я свого проекту та виберіть шлях збереження. Переконайтеся, що вибрано 2D-платформу, оскільки ми будемо створювати анімацію у 2D-просторі. Далі, натисніть кнопку «Create Project» і дочекайтеся закінчення створення проекту. Вітаю, ви успішно створили новий проект у Unity і можете розпочати створення анімації!

Встановіть Sprite Editor

Для створення анімації в юніті 2д необхідно встановити Sprite Editor. Цей інструмент допоможе створити окремі спрайти для кожного кадру анімації. Для встановлення Sprite Editor перейдіть до меню Window-> 2D-> Sprite Editor. Якщо ви не бачите Sprite Editor у списку, переконайтеся, що його встановлено у вашій версії юніті. Після встановлення Sprite Editor відкрийте вікно редагування спрайту, натиснувши кнопку Sprite Editor у вікні інспектора. Потім виберіть потрібний спрайт і розділіть його на окремі кадри для кожного кадру анімації.

Читати далі"Де та як роблять ключі: назва спеціалізованого місця".

Також можна використовувати Sprite Editor для створення нового спрайту, вибравши потрібну текстуру та розділяючи її на окремі кадри анімації. Це дозволить створити якісну та плавну анімацію для вашої гри.

Робота зі спрайтами

Спрати – це зображення, які використовуються для створення анімації. Вони містять кілька кадрів, що анімуються за допомогою коду. У Unity 2D спрайти можна легко імпортувати в проект як звичайні зображення.

Для роботи зі спрайтами в Unity необхідно створити об'єкт Sprite у вікні Inspector. Цей об'єкт міститиме зображення та всі необхідні настройки для анімації, такі як швидкість анімації та поведінка об'єкта у грі.

  • Створення та імпортування спрайтів
  • Створення анімації з використанням спрайтів
  • Використання спрайтів для створення фонів та об'єктів гри

Створіть анімаційний контролер

Анімаційний контролер - це компонент, який дозволяє керувати анімаціями об'єкта в Unity. Щоб створити анімаційний контролер, дотримуйтесь цих простих кроків:

  1. Відкрийте вікно «Project» та створіть нову папку.
  2. Дайте папці назву "Animations" (або будь-яке інше зручне для вас).
  3. Клацніть правою кнопкою миші на папці «Animations», виберіть «Create» та виберіть «Animator Controller».
  4. Дайте анімаційному контролеру зручне вам ім'я, наприклад «PlayerAnimator».
  5. Перетягніть анімаційний контролер у головне вікно редактора Unity.

Тепер ваш анімаційний контролер готовий до використання. Ви можете додати анімації, переміщуючи їх з папки «Animations» як стани в анімаційний контролер.

Щоб додати переходи між анімаціями, створіть нові додаткові стани та переміщуйте їх між двома анімаціями, між якими ви хотіли б створити перехід. Потім налаштуйте умови переходу між цими станами.

Таким чином, створення анімаційного контролера – це швидкий та простий спосіб управління анімаціями об'єкта в Unity. Поекспериментуйте зі створенням різних станів і переходів, щоб досягти бажаного візуального ефекту.

Створіть об'єкт анімації

Перед тим, як почати створювати анімацію, необхідно створити об'єкт, який анімуватимемо. Це може бути будь-який об'єкт: персонаж, об'єкти оточення, елементи UI і т.д. Важливо, щоб об'єкт був спрайт (2D текстурою).

Щоб створити об'єкт анімації, відкрийте вікно «Hierarchy» (або натисніть Ctrl+Shift+N), натисніть кнопку «Create» та виберіть «GameObject». Дайте об'єкту ім'я, наприклад "Player".

Далі додамо прив'язку спрайтів до об'єкту. Для цього перетягніть вибраний спрайт на панель Scene (у папці Assets або Project) у відповідь на це буде створено новий об'єкт типу Sprite. Після цього перенесіть новий "Sprite" на об'єкт "Player", використовуючи Drag&Drop.

Для створення анімації вам знадобиться кілька спрайтів з різними позами або положенням об'єкта. Ви можете створити їх самостійно, використовуючи редактор графіки, на кшталт Aseprite. Використовуйте технологію Slice для нарізання зображень на частини та експортування до окремих файлів, якщо у вас є готова анімація.

Після того, як ви створили всі необхідні зображення, перетягніть їх у створений раніше об'єкт у папці «Assets». Зауважте, що для роботи з анімацією всі спрайти повинні бути у форматі одного файлу.

Тепер ви можете перейти до створення анімації у Unity.

Робота з кадрами анімації

Анімація в Unity 2D складається із серії кадрів, які показують рух об'єкта з часом. Регулюючи кадри анімації, можна створювати різні візуальні ефекти і передавати різну інформацію про рух.

Додавання кадрів: Щоб додати кадр, клацніть правою кнопкою миші на вікні Проекту, виберіть «Створити» та виберіть «Новий спрайт». Потім перетягніть новий спрайт у вікно Аніматора. Безпосередньо у вікні Аніматора можна використовувати кнопки «Додати кадр» та «Видалити кадр» для керування кадрами.

Редагування кадрів: Клацніть двічі на кадрі, щоб відкрити його редактор. Ви можете змінити спрайт, додати ефекти або створити складну комбінацію спрайтів в одному кадрі. Також можна використовувати функцію інвертування кадру, щоб створити ефект дзеркального відображення.

Управління порядком кадрів: Ви можете змінювати порядок кадрів, перетягуючи їх у вікні аніматора. Це дозволяє змінювати швидкість анімації та визначати, які кадри програватимуться до, а які після.

Петлі та автоматичне відтворення: Якщо ви хочете анімацію програвалася в циклі, наприклад, для анімованого персонажа, що біжить, ви можете вибрати опцію «Програвати в циклі» у вікні параметрів Аніматора. Також можна встановити затримку між кадрами і задати кількість повторень.

Робота з кадрами анімації – важливий аспект створення ваших ігрових проектів у Unity 2D. За допомогою правильного налаштування та редагування кадрів ви можете створювати приголомшливі візуальні ефекти та передавати інформацію про об'єкти та їх рухи.

Редагування параметрів анімації

Після створення анімації в Юніті, ви можете змінювати різні параметри анімації, такі як час, швидкість та повороти. Для редагування параметрів анімації виконайте такі кроки:

  1. Виберіть вкладку «Анімація» у редакторі юніті;
  2. Виберіть створену вами анімацію, клацнувши мишею на її назві;
  3. Змініть параметри у вкладці «Параметри анімації». Тут ви можете встановити час початку та кінця анімації, швидкість анімації, поворот спрайтів та багато іншого.

Крім того, можна створювати кілька параметрів для однієї анімації. Це робиться за допомогою функції «Додати параметр» у розділі «Параметри анімації». Ви можете додати нові параметри, щоб змінити їх властивості протягом анімації.

Іноді під час редагування параметрів анімації виникають проблеми з відображенням анімації.Якщо після редагування анімація працює не так, як ви очікували, спробуйте перезавантажити проект, або перевірити налаштування кожного спрайту та колайдера в анімації.

Редагування параметрів анімації може зайняти багато часу, але це варте того, тому що це один із найважливіших етапів у створенні анімації в юніті 2д. Виконуючи наведені вище кроки, ви можете внести будь-які зміни до кожної анімації вашого проекту.

Завершіть роботу з аніматором

Після того, як ви створили анімацію в юніті 2д за допомогою аніматора, вам потрібно завершити роботу з ним.

Перед тим як зберегти та закрити аніматор, переконайтеся, що всі анімації правильно налаштовані і знаходяться на своїх місцях. Не забувайте перевірити, що рух між анімаціями відбувається без плавання.

Також рекомендується створити резервну копію аніматора перед закриттям вікна або після завершення роботи з ним. Таким чином, ви захистите себе від втрати даних, якщо виникнуть проблеми в процесі збереження або закриття аніматора.

Не забувайте виходити з аніматора відповідним чином. Залежно від ситуації, ви можете закрити вікно аніматора, зберегти зміни та вийти з юніті 2д, або зберегти зміни та продовжити роботу з іншими сценами чи елементами гри.

Загалом завершення роботи з аніматором важливе для збереження цілісності та працездатності проекту в юніті 2д. Будьте уважні та обережні в цьому процесі.

Відео на тему:

Питання-відповідь:

Як розпочати роботу з анімацією в юніті 2д?

Для початку роботи з анімацією в юніті 2д потрібно створити анімаційний контролер і додати його до компонента аніматора об'єкта.Потім створити кілька спрайтових анімацій та зв'язати їх за допомогою переходів в анімаційному контролері.

Як створити анімаційний контролер у юніті 2д?

Щоб створити анімаційний контролер у юніті 2д, потрібно у вікні проекту натиснути правою кнопкою миші, вибрати Create -> Animator Controller. Потім перейменувати створений контролер і додати його компонент аніматор об'єкта.

Як додати спрайти в анімацію в юніті 2д?

Щоб додати спрайти до анімації в юніті 2д, потрібно створити спрайтові анімації у вікні аніматора, потім додати спрайти до нової спрайтової анімації. Можна або імпортувати спрайти з файлів, або створити вручну у вікні Scene.

Як додати переходи між анімаціями у юніті 2д?

Щоб додати переходи між анімаціями в юніті 2д потрібно створити переходи в анімаційному контролері. Для цього потрібно поєднати виходи анімацій із входами інших анімацій, задаючи умови переходу та тривалість переходу.

Як налаштувати швидкість анімації в юніті 2д?

Щоб налаштувати швидкість анімації в юніті 2д, потрібно змінити параметр Speed ​​в компоненті аніматора об'єкта або в анімаційному контролері. Також можна використовувати функції керування швидкістю анімації в скриптах.

Як використовувати анімацію у скриптах юніті 2д?

Щоб використовувати анімацію в скриптах юніті 2д, потрібно отримати доступ до компонента аніматора об'єкта, потім змінювати параметри анімації, стан, швидкість і т.д. за допомогою функцій керування анімацією.

Як додати звук до анімації в юніті 2д?

Щоб додати звук до анімації в юніті 2д, потрібно створити компонент AudioSource в об'єкті, вибрати звуковий файл, а потім у скрипті прив'язати програвання звуку до конкретних подій в анімації.

Протестуйте анімацію

Щоб бути впевненим у тому, що ваша анімація працює правильно, необхідно протестувати її перед остаточним запуском проекту.

1. Відтворення анімації в Unity

Ви можете переглянути анімацію, використовуючи редактор Animation у Unity. Для цього виберіть об'єкт, який містить анімацію, і натисніть кнопку відтворення на верхній панелі редактора.

2. Тестування у грі

Для тестування анімації в грі, створіть сцену і додайте об'єкт, що містить анімацію Запустіть гру і переконайтеся, що анімація відтворюється правильно.

3. Тестування на різних пристроях

Перевірте, чи анімація працює коректно на різних пристроях, на яких ви плануєте випустити гру.

  • Не забувайте перевіряти свої анімації на повному спектрі пристроїв та дозволів;
  • Проводьте тестування на реальних пристроях;
  • Уникайте флешингу та інших потенційно шкідливих анімаційних ефектів;
  • Пам'ятайте, що тестування є важливою частиною процесу розробки гри.

Експортуйте анімацію

Якщо ви закінчили створення анімації та хочете використовувати її у своєму проекті в юніті 2д, то вам потрібно експортувати її з програми, в якій ви створювали анімацію (наприклад, Adobe Photoshop або Spine).

Якщо ви використовували Adobe Photoshop, ви можете експортувати анімацію у форматі GIF або PNG Sequence. Якщо ви використовували Spine, ви можете експортувати анімацію у форматі JSON.

Після експорту анімації вам потрібно створити в юніті 2д анімаційний контролер (Animator Controller) та додати до нього створені анімації. Для цього виберіть в юніті 2д Assets -> Create -> Animator Controller. Потім перетягніть створені анімації на вікно Animator Controller.

Щоб використовувати анімацію у вашому проекті, створіть об'єкт, до якого ви хочете додати анімацію. Потім додайте до нього компонент Animator і підключіть до нього створений вами Animator Controller.

Тепер ви можете запустити вашу програму і насолоджуватися анімацією!

Як зробити анімацію 2D персонажа в Unity 5

У сьогоднішньому уроці ми розберемо, як зробити анімацію 2D персонажа Unity 5. Продовжимо ми з попереднього уроку, на якому зупинилися. Для початку нам необхідно навісити на нашого персонажа компонент Animator, а також у папці, в якій зберігається інформація про об'єкт (бажано зберігати інформацію про об'єкти структуровано, щоб не заплутатися) створити ПКМ -> Create -> Animator Controller і з'єднати її зі св -вом Controller у Animator у персонажа.
На даний момент до нашого персонажа прив'язаний його контролер, яким він вибиратиме собі анімації. Для того, щоб у персонажа була анімація потрібно кілька послідовних спрайтів персонажа в різних положеннях, які ми чергуватимемо послідовно.

Створимо в папці з аніматором ще 4 Animation і перейменуємо їх відповідно сторонам пересування UpAnimation, DownAnimation, LeftAnimation, RightAnimation. Відкриємо наш Animator Controller (Я його перейменую в PlayerAnimator).Перед нами буде таке вікно:

Виділивши всі 4 анімації перенесемо в темну зону. З'являться 4 нових елементи, клікнувши на один з них і перейшовши у вікно Animation (або відкривши через Window -> Animation), ми потрапимо у вікно управління цією анімацією. Бажано це вікно зручно розмістити, щоб у швидкій доступності була вкладка Scene і Inspector (для цього я виношу його в окреме віконце).

Червона смужка праворуч відповідає за те, в який час відбудеться певна дія. А Samples - відображає кількість кадрів. Збільшення числа збільшить швидкість анімації. Я поставлю собі 30 кадрів.

Тепер при натисканні на червоний гурток Unity почне записувати ваші дії щодо об'єкта (не забудьте його вибрати на сцені), на який навішаний аніматор з цією анімацією (кнопки керування зверху змінюють свій колір для того, щоб не забути вимкнути запис). Нам необхідно лише змінювати 2D спрайти нашого персонажа. Тепер переміщуючи червоний покажчик по кадрах, виставляємо необхідні спрайти. У мене вийшло щось таке

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

Тепер проробіть такі ж дії для кожної анімації. Тепер видаляємо ці 4 об'єкти із темної зони аніматора. Наша анімація лежить просто в папці, У лівому верхньому кутку ми вибираємо Parameters і натисканням на "+" додаємо 2 float значення x та y.

У темній зоні ми створюємо за допомогою ПКМ -> CreateState -> FromNewBlendTree (BlendTree за нас сам вибиратиме потрібну для відтворення анімацію) і клацаємо по ньому двічі, відкриваються нутрощі BlendTree і в правому верхньому куті інспектора DirectDrm2 Index DirectDurm DirectDrm2 TypeDm2 А в Parameters ставимо x та y.Це означає, що за наш BlendTree відповідатиме 2 параметри. Також необхідно додати 4 нових Motion через + -> AddMotionField. Для кожної Motion ми вибираємо відповідну анімацію з папки та значення напрямку x та y. У мене вийшло так

Далі необхідно натиснути на кожну анімацію в папці та поставити галочку навпроти LoopTime. Це необхідно для того, щоб анімація йшла нескінченно. Наш BlendTree тепер готовий, але якщо вибрати його постійним він буде завжди йти. Щоб це виправити, необхідно відкрити аніматор і створити там Empty, який ми встановимо стандартним і перейменуємо в Idle. Для цього необхідно натиснути на нього ПКМ та вибрати Set as Layer default state. Тепер натиснемо на Idle ПКМ та оберемо Make Transition і вкажемо на Blend Tree, зворотну дію треба зробити і на BlendTree. Тепер необхідно додати новий параметр bool в аніматорі, який назвемо IsWalking.

Натиснувши ЛКМ по з'єднанню, необхідно прибрати галочку з Has Exit Time і в Conditions додати нову умову, вибравши IsWalking і поставивши необхідне значення. В іншому з'єднанні потрібно зробити те саме, тільки замість true зробити false. І тепер, коли наш параметр IsWalking буде поставлений у true, то 2D персонаж анімуватиме свій рух, а як рух припиниться, то він перестає анімуватися.

Тепер необхідно ввімкнути пересування та змінити параметри в скрипті для анімації. У PlayerController необхідно написати:

public class PlayerController : MonoBehaviour < Rigidbody2D rigidBody2d; Animator anim; private void Start() < rigidBody2d = GetComponent(); anim = GetComponent(); >bool NeedToGo=false; public float Speed=0.05f; Vector2 worldPos; void Update () < if (Input.GetMouseButtonUp(0)==true) < Vector2 mousePos = Input.mousePosition; worldPos = Camera.main.ScreenToWorldPoint(mousePos); NeedToGo = true; //Обчислюємо різницю позицій Vector3 diff = worldPos - (Vector2)transform.position; //І нормалізуємо її (наводимо до значення від -1 до 1) diff.Normalize(); //Заносимо їх у наші x і y anim.SetFloat( " x " , diff.x); anim.SetFloat("y", diff.y); //Встановлюємо значення ходи в аніматорі anim.SetBool("IsWalking",true); >if (NeedToGo) < rigidBody2d.MovePosition(Vector2.MoveTowards(transform.position,worldPos,Speed*Time.deltaTime)); if (Vector2.Distance(transform.position, worldPos) < 0.01) < NeedToGo = false; //Зупиняємо анімацію коли дійшли anim.SetBool("IsWalking", false); >> > >

У результаті цього уроку ми розібрали як зробити анімацію 2D персонажа в Unity 5

Як з нуля зібрати 2D персонажа та пожвавити його в Unity. Частина 1

Павло Попов - Senior Unity Developer у команді NIX. Протягом восьми років він взаємодіє з архітектурою проектів та мережевою складовою, а також періодично робить інді-ігри. Знаком зі стеком розробки з нуля, включаючи начерки картинок. Для ArtCraft Media Павло написав докладний туторіал про те, як створити та анімувати 2D персонажа за допомогою Unity 2020 LTS та пакетів PackageManager.

Чому Unity?

Вибір ліг на цю технологію тому, що в ній у мене більше досвіду. Засоби Unreal Engine, наприклад, найкраще використовувати у 3D-розробці.Godot цілком може потягатися з Unity, але там ще є нюанси з продуктивністю і стабільністю. Adobe Animate або Toon Boom Animation – для тих, хто малює покадрово, наприклад, для художників та професійних аніматорів.

Ми ж націлені на автоматизацію і застосування цих анімацій в іграх або кат-сценах. Так ми зможемо керувати широким спектром складових картини, не вдаючись до промальовування кожного кадру, а використовуючи сам двигун та напрацювання: освітлення, ефекти, симуляції боїв тощо.

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

Зараз ми створимо готового до анімації персонажа засобами Unity із картинки, розбитої на частини. Освоївши описані нижче інструменти, ти зможеш пожвавити будь-яку картинку, привести в потрібний вигляд персонажа і пожвавити його. Крім того, в майбутньому ти будеш набагато точніше ставити завдання художникам. Отже, погнали!

Початкове налаштування Unity

Поставивши 2D PSD Importer, за ним підтягнеться 2D Animation, який знадобиться для інверсної кінематики (далі IK). Далі все, що нам потрібно, правильно налаштований арт, і тут є свої тонкощі. Візьмемо для наочності програму Gimp (наступні дії ідентичні для Photoshop).

Використані пакети (Вікно PackageManager (Windows->PackageManager). Джерело: особистий архів автора

Розбиваємо персонажа на шари у Gimp (або Photoshop)

Арт із сайту «порізав» художник-аматор. У файлі враховується пріоритет по шарах - який буде виставлений у Gimp, такий же буде на сцені Unity. Зміни можна буде проводити лише у самих об'єктах або у вихіднику.Закреслений/прихований шар - це персонаж у збиранні однією картинкою, щоб точно зібрати його по шматочках. Далі приховуємо цей шар, щоб не імпортувати за замовчуванням (у налаштуваннях імпорту Unity є можливість включити в імпорт приховані шари, - прим. авт.).

Персонаж, розібраний по шарах Gimp. Джерело: особистий архів автора

Якщо ви використовуєте Photoshop, виберіть при експорті формат .psb. Якщо Gimp, то експортуємо .psd, і потім вручну змінюємо формат файлу на psb у провіднику. Вони відрізняються великим обсягом роздільної здатності аж до 300 000 x 300 000 на відміну від звичайного .psd (30000 x 30000). Якщо кидати звичайний формат (.psd), Unity його не побачить. Перейдемо до найцікавішого інструменту з PSD Importer.

Налаштування персонажа в Unity

Завдяки PSD Importer пакету ми бачимо додаткові можливості Secondary Textures. Вони потрібні, щоб накласти додаткові карти нормалей або висот, і зробити нашу картинку більш об'ємною.

Вибираємо нашого персонажа (Вікно SpriteEdtior на кліку на файл персонажа.psb, youtubeIntro). Джерело: особистий архів автора

Накладаючи нормаль, можна зробити імітацію заглиблень та опуклостей без використання 3D, а лише освітлюючи поверхню. На цих інструментах я не докладно зупинятимусь, але приклад може виглядати ось так:

Результат - світло знає, як висвітлити sprite. Висоти та поглиблення знаємо завдяки NormalMap. Джерело: особистий архів автора

Йдемо далі: перевіряємо, чи всі елементи в головному вікні розпізналися коректно, і можемо перейменувати або змінити pivot за потребою. Тепер нас цікавить Skinning Editor.

Вікно Skinning Editor. Джерело: особистий архів автора

Корисні посилання PSD Importer про SkiningEditor.Рекомендую ознайомитися з прикладами, якщо є бажання створити щось відмінне від нашого персонажа, і щоб зрозуміти різні сторони інструменту.

Помаранчевим кольором на скріншоті підсвічено, яку панель варто увімкнути. (Hierarchy - головна панель, переставлення батьківських об'єктів у дочірні, - прим. авт.).

Раджу одночасно назвати новостворену кістку в панелі Visibility -> Bone (на скріншоті нижче виділено помаранчевим).

Фінальний результат налаштування кісток Джерело: особистий архів автора

Натискаємо AutoGeometry для побудови геометрії під кожен спрайт. Це дозволяє в тонкому налаштуванні задати потрібний Mesh Deformation.

Малоймовірно, що тулза на 100% розпізнала все правильно. Перше, що нас цікавить - який спрайт і область прив'язалася до кістки.

Bone Influence - налаштування прив'язки кісток до зображення та його областей.

У нашому випадку буде достатньо того, щоб одна кістка керувала лише одним спрайтом і всією його областю.

Примітка: є більш просунутий режим — це, наприклад, коли потрібно зробити, щоб плащ був анімований. прив'язки кісток до картинок.

Коли ми приберемо зайві кістки, побачимо, що вся область підсвічується кольором цієї кістки.

Фінальний результат налаштування.Джерело: особистий архів автора

У разі правильного настроювання кісток до областей зображення (у нас же до всього шару картинки), переходимо до налаштування ієрархії. На вкладці visibility ми бачимо фінальний результат. Якщо у тебе була подібна назва кісток, ти легко можеш це перевірити.

Примітка: Рекомендую для ніг і рук зробити три кістки, або пізніше додати їх у режимі префабу Так нам буде простіше за допомогою LimbSolver 2D (З пакету 2D Animation - компонент інверсної кінематики, - Прим. Авт.) налаштувати кінцівки. Не забуваємо натиснути Apply, перекидаємо наш префаб у Unity:

Налаштований первісний стан. Джерело: особистий архів автора

Виглядає вже цікавіше, але щось дуже багато кісток, і потрібно натискати на «батьків» кістки, щоб зрушити їх так, як ми хочемо. На допомогу приходять інструменти інверсної кінематики з пакету 2D Animation. З їхньою допомогою ми налаштуємо поведінку всієї руки чи ноги однією фінальною точкою. Покрокове налаштування та приклад від самих Unity такого етапу є за посиланням.

Налаштування персонажа для анімації за допомогою інверсної кінематики

Перед тим, як ми доповнимо персонажа елементами управління, потрібне попереднє налаштування. Створимо батьківський об'єкт для нашого героя і перевіримо, що в нього нульові координати та стандартний масштаб дорівнює одному:

Створення батьківського об'єкту для персонажа. Джерело: особистий архів автора

Створюємо префаб персонажа. У нової системи префабів Unity (починаючи з версії 2018 року, — прим. авт.) Існують деякі особливості. Наприклад, об'єкт, який ми створили з асету, не буде зберігати зміни. Навіть якщо це вихідник, як будь-яка 3D-модель.Тому для збереження своїх праць рекомендую вкладати подібні об'єкти в ще один батьківський:

Початковий файл персонажа. Джерело: особистий архів автора

Далі додаємо чотири Limb Solver – це будуть наші кінцівки. І один ССD, тому що у нас між головою та тулубом всього дві кістки. Тут ми можемо налаштувати точніше. Якщо немає бажання морочитися, можна просто створити порожній об'єкт (у нашому випадку - замість меча), і зрушити його, або взагалі врахувати в налаштуваннях кісток кроком раніше.

Примітка: CCD і FABRIK відрізняються точністю та кількістю проходів ієрархією. Рекомендую ознайомитись із документацією докладніше.

Додаємо Limb Solver. Джерело: особистий архів автора

Тепер називаємо наші новостворені об'єкти, і створюємо по одному простому GameObject під кожен. Бажано їх також назвати, щоб надалі не губитися. Встановлюємо Target у кожному створеному Solver – чотири Limb та один CCD.

Встановлюємо Target у дочірні об'єкти. Джерело: особистий архів автора

Тепер встановлюємо Effector-точку для кожного IK Solver:

ArmL Solver Setup. Джерело: особистий архів автора

Ми можемо встановити довжину впливу на нащадків (виділено зеленим на скріншоті) до плечей, або в нашому випадку до Roota. Коли піднімемо наші точки з підлоги, побачимо, що поки що не все так гладко.

Результат первинного налаштування. Джерело: особистий архів автора

Тут бачимо дві проблеми. По-перше, наші суглоби дивляться не в той бік. По-друге, наш керуючий пункт направляє руки персонажа не туди, куди треба.

Для початку поправимо становище рук. Для цього переходимо до кінцевої ієрархії в Sword. Навівши курсор між X та значенням, з'являється альтернативний курсор - <>.Клікаємо і потроху змінюємо положення так, щоб наш меч ліг у руку. Ту ж операцію проводимо і координати Y за необхідності.

Налаштування IK. Джерело: особистий архів автора

Зробимо так обома руками. Якщо у тебе кістки знаходяться послідовно один за одним, з цією проблемою ти не зіткнешся. Також переконаємося, що батьківський об'єкт не має усунення:

Перевірка на зміщення точок управління. Джерело: особистий архів автора

Переходимо до суглобів. Для цього натискаємо на Flip-налаштування. Цей інструмент виверне суглоб у потрібний бік. Тут все залежить від первісного скелета. У нашій ситуації маємо справу з ногами:

Налаштування суглобів. Джерело: особистий архів автора

Ми отримали налаштований персонаж, яким можемо керувати за допомогою п'яти точок. Також нам доступний Root, який не прив'язаний до інверсної кінематики. Зрушуючи його, ми можемо змінювати положення тіла, а наші IK Solver залишать кінцівки на тій самій позиції.

Фінальний результат налаштування. Джерело: особистий архів автора

За лічені секунди ми можемо поставити нашого персонажа у потрібне положення та швидко анімувати у середовищі Unity для гри чи ролика.

У наступній частині розглянемо створення кат-сцени та те, як ми можемо скомпозувати керування камерою, ефектами та вже налаштованим персонажем в одному таймлайні за допомогою Cinemachine Package.

Схожі статті

  • Як реанімувати чубушник
  • Як реанімувати заморожені тюльпани
  • Як реанімувати штамп для Стемпінгу
  • Як анімувати перехід між слайдами
  • Як пожвавити персонажа в готиці 2
  • Як реанімувати морожену картоплю
  • В якому додатку можна анімувати
  • Як змінити ім'я персонажа в EVE Online
  • Недавні статті

  • Як бродить зернова брага
  • Що робити якщо не засмагаєш на сонці чому засмага погано лягає на шкіру або перестає прилипати
  • Як швидко зняти гель лак без апарату
  • Як робиться Каті голови
  • Яка гребінець краще для об'єму
  • Чим роблять м'яку покрівлю
  • Чи можна залишати крем для обличчя на ніч
  • Де знаходиться датчик селектора
  • географія нашої діяльності
    вулиця Драгоманова, 27
    вул. Курчатова 1Б
    вул. Міцкевича 130
    вул. Лабунського, 1
    вул. Макарова-Пржевальського
    вул. Толстого 10
    вул. Грушевського 28
    вул. Перший промінь (Черняхівського)
    напишіть нам

    сообщение успешно отправлено
    x