Godot Engine

Godot Engine

Not enough ratings
Привязка коллизий(коллайдеров) к костям.
By GARWED
В руководстве описан способ подчинения коллизий к объектам и в частности скелету.
   
Award
Favorite
Favorited
Unfavorite
Как это сделать?
Недавно я мучался так как хотел сделать коллизии не статичными, а связанными с персонажем. Я хочу показать как я это сделал чтобы если кто-то захочет сделать что-то похожее ему не пришлось облазить интернет или задать 1000 вопросов ии. Может быть я глупый, или просто новичок, но решение оказалось крайне простым, итак... от слова к делу:

Изначально нужно подчинить скелету(Skeleton3D) узлы 'BoneAttachment3D' для каждой из требующихся коллизий, в свойстве Bone Name выбираем нужную кость, создаем дочерний узел RemoteTransform3D (Так как мой персонаж не воспринимает коллизии если они подчинены не напрямую).

И в свойстве 'Remote Path' выбираем коллизии которые подчинены напрямую персонажу.

Теперь это уже должно работать, коллизии будут иметь такое же положение как и 'BoneAttachment3D', а он в свою очередь определяется положением кости, но я бы хотел поделиться как настраивал базовое положение костей.

Просто брал коллизию, корректировал ее под то положение где она должна быть, переносил ее под узел 'BoneAttachment3D', переносил трансформацию в 'RemoteTransform3D' и возвращал коллизии обратно.



На этом все, это было мое первое руководство, поэтому не судите строго, если я написал что-то не так - поправьте меня так как я всё ещё новичок.
Спасибо за прочтение!