Ragdoll 2d як реалізувати

зробити 2D ляльку не проблема в ручну, але можна і скрипт автоматезірованний написати якщо потрібно робити купі різновидних скелетів

зробив шаблон 1 голова 1 торс 2 руки 2 ноги
квад коллайдер і хінгджоінти ось тобі і скелет
і чіпляй різні спрайт для різних персонажів

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

Якщо ще виникли проблеми зі створенням, то ось приблизно така схема:
Наприклад у мене є персонаж. Я розбиваю його на частини в Sprite Editor-e і для кожної частини тіла встановлюю по прив'язці туди, де буде кріпитися ця частина. Якщо ваш персонаж вже складається з окремих спрайтів, то просто встановіть точки прив'язки в потрібні місця.

Ragdoll 2d як реалізувати

Потім витягніть всі частини тіла на сцену і розташуйте так, як вам потрібно (зберіть персонажа назад)

Ragdoll 2d як реалізувати

Виділіть всі частини і додайте до них компоненти RigidBody2d і будь-який з відповідних 2d коллайдеров.

Так як частини тіла повинні кріпитися до тіла, то виділіть всі частини, КРІМ тіла і додайте до них компонент Hindle Joint2D. Нехай всі частини (крім тіла) залишаються виділеними і перетягніть ТІЛО в властивість Connected RigidBody компонента Hindle Joint2D. Тепер кінцівки прикріплені до тіла.

Ragdoll 2d як реалізувати

Далі, по черзі виділяйте кожну кінцівку, і перемістіть якір Hindle Joint2D в точку прив'язки поточного спрайту

Ragdoll 2d як реалізувати

По-ідеї все має вже працювати.

Схожі статті