Unity 6.3
0 онлайн 85 гостей 3 в системе
Вход

Настройка ограничений движения с помощью настраиваемых соединений

Вы можете использовать настраиваемое соединение для ограничения как линейного, так и вращающегося движения по каждой оси соединения независимо.

Использование Движение X, Y, Z для линейного движения, и X, Y, Z вращение для вращения. По умолчанию эти оси соответствуют локальным осям объекта, определяемым в Ось свойство. Чтобы ограничить перемещение по глобальным осям вместо локальных осей объекта, включите Конфигурировано в мировом пространстве.

Вы можете установить каждую ось на Заблокированный, Ограниченный или Свободный:

  • Заблокированная ось ограничивает все движения, так что соединение не может двигаться вообще. Например, объект, заблокированный в глобальной оси y, не может двигаться вверх или вниз.
  • Ось Лимитированные позволяет свободно перемещаться между определенными вами пределами. Например, вы можете ограничить дугу стрельбы пушечной башни, ограничив ее вращение по оси Y определенным угловым диапазоном.
  • Ось со значением Бесплатно допускает любое движение.

Чтобы ограничить линейное движение, используйте свойство Linear Limit, которое определяет максимальное расстояние, на которое соединение может перемещаться от своей точки начала (измеряется по каждой оси отдельно).

Иллюстрация предельной величины вдоль оси Х
Иллюстрация предельной величины вдоль оси Х

Чтобы ограничить вращение, используйте свойства Angular Limit. С помощью этого свойства можно указать различные предельные значения для каждой оси. Также можно определить отдельные верхние и нижние пределы угла вращения для оси x; две другие оси используют одинаковые углы по обе стороны от первоначального вращения.

Добавить отскок на границах соединения

Вы можете имитировать отражающую поверхность на границах соединения. По умолчанию соединение прекращает движение, когда оно достигает своего предела. Однако неэластичные столкновения, как это редко в реальном мире, и часто более реалистично добавить некоторое отражение к ограниченному соединению.

Чтобы заставить ограниченный объект отскочить назад после того, как он достигнет своего предела, используйте свойство Отдача линейных и угловых пределов. Используйте низкое число для более реалистичного, естественного столкновения, или установите его выше, чтобы симулировать необычно отскакивающие границы, как подушки бильярдного стола.

Упругое соединение не выходит за установленный предел
Упругое соединение не выходит за установленный предел

Добавить эластичность в пределах соединения

Вы можете имитировать пружиноподобное эластичное поведение соединения, когда оно превышает свои пределы. Для этого используйте свойства пружины Linear Limit Spring для линейного движения и Angular X/YZ Limit Spring для вращения. Когда вы устанавливаете свойство Limit Spring на значение выше нуля, соединение не останавливается, когда оно достигает предела; вместо этого, оно пересекает предел, и сила пружины притягивает его обратно в предельное положение. Значение Limit Spring определяет силу силы. По умолчанию, пружина тянет соединение в направлении, противоположном направлению столкновения.

Чтобы уменьшить эластичность и вернуть соединение к предельному значению более мягко, используйте свойство Дампер.

Пружинное соединение пересекает предел, но затем возвращается к нему
Пружинное соединение пересекает предел, но затем возвращается к нему