За всё время существования моего канала я выпустил кучу статей о анимации, в большинстве которых я задевал инверсную кинематику и не просто задевал, а восхищался ею. Некоторые материалы посвящены разработке и образовательному просвещению некоторых аспектов индустрии, думаю справедливо будет задеть и эту интересную тему, но уже в контексте обучения. В рамках этой статьи я создам простейшую систему постановки ног на препятствие (aka Foot IK), опишу логику работы и покажу пару гифок.
Полный скрипт, если есть заинтересованные - спросить в комментариях. Логика работы и результат Сначала заинтригую гифкой с результатом : Да, анимация не была записана. Я двигаю объект "игрок", а ножки сгибаются сами, а если быть точнее - с помощью алгоритма : Переменные, функции и луч Какие переменные нужны? Текущие положения костей запрашиваются через animator.GetBoneTransform, сама функция инверсной кинематики выполняется внутри OnAnimatorIK: Для того, чтобы кость была подвержена IK, нужно установить ей "ве