Компонент Fixed Joints (Неподвижное соединение) ограничивает движение определенного объекта, связывая его с другим объектом. Этот процесс похож на Parenting (определение текущего объекта как “дочерний” по отношению к другому, “родительскому”, объекту), но реализован с помощью физики, а не иерархии компонентов Transform. Чаще всего этот компонент используется в случае, если в определенный момент времени может потребоваться разъединить два объекта, или наоборот, соединить два объекта без необходимости изменения иерархии.
Свойство: | Функция: |
---|---|
Connected Body | Необязательная ссылка на другой объект с Rigidbody, к которому присоединяется текущий объект. Если поле оставить пустым, объект присоединяется к заданной точке в пространстве. |
Break Force | Сила, которую требуется приложить к объекту, чтобы разорвать соединение. |
Break Torque | Крутящий момент, который необходимо приложить к объекту, чтобы разорвать соединение. |
Enable Collision | Если включено, два соединенных тела будут сталкиваться друг с другом. |
Enable Preprocessing | Disabling preprocessing helps to stabilize impossible-to-fulfil configurations. |
При создании игр иногда возникают случаи, когда требуется, чтобы объекты двигались вместе (временно или постоянно). Компоненты Fixed Joint позволяют упростить реализацию подобных ситуаций, поскольку вам не приходится менять положение объекта в иерархии с помощью скриптов. Минус подобного решения в том, что вам придется добавлять компоненты Rigidbodies на объекты, которые требуется соединить с помощью Fixed Joint.
Например, с помощью этого компонента можно реализовать “липкую гранату”. Для этого нужно написать скрипт, позволяющий определить столкновение с другим объектом, имеющим компонент Rigidbody (например врагом), после чего создать Fixed Joint, который присоединит гранату к этому Rigidbody, заставляя ее оставаться “прилипшей”, даже если враг будет двигаться.
Для определения пределов прочности соединений можно использовать свойства Break Force и Break Torque. Если их значение меньше чем Infinity (бесконечность) и приложенная к соединению сила оказывается больше этих значений, соединение Fixed Joint разрывается и перестает удерживать два объекта вместе.