На этой странице приведены советы по улучшению Jointфизического компонента, обеспечивающего динамическое соединение между компонентами Rigidbody, обычно допускающими некоторую степень движения, например шарнир. Подробнее
См. в Словарь и Рэгдолл стабильность.
- Избегайте малых углов соединения Угловой предел Y и Угловой предел Z. В зависимости от вашей установки, минимальные углы должны составлять от 5 до 15 градусов, чтобы быть стабильным. Вместо использования небольшого угла попробуйте установить угол равным нулю. Это блокирует ось и обеспечивает стабильное моделирование.
- Снимите флажок со свойства Включить предварительную обработку для соединения. Отключение предварительной обработки может помочь предотвратить разделение или беспорядочное перемещение соединений, если они вынуждены находиться в ситуациях, когда невозможно удовлетворить ограничения соединения. Это может произойти, если Rigidbodyкомпонент, позволяющий воздействовать на GameObject смоделированная гравитация и другие силы. Подробнее
См. в Словарь. static столкновениеСтолкновение происходит, когда физический движок обнаруживает, что коллайдеры двух игровых объектов соприкасаются или перекрываются, когда хотя бы один имеет Компонент Rigibody и находится в движении. Подробнее
См. в Словарь геометрию (например, порождение Ragdoll частично внутри стены) . - В экстремальных условиях (например, частичное возрождение внутри стены или толчок с большой силой) решатель соединений не может удерживать компоненты Rigidbody Ragdoll вместе. Это может привести к растяжению. Чтобы справиться с этим, включите проекцию на соединения с помощью ConfigurableJoint.projectionMode или CharacterJoint.enableProjection.
- Если компоненты Rigidbody, связанные с соединениями, дрожат, откройте окно Physics (Edit > Настройки проектаОбширный набор настроек, которые позволяют настроить поведение физики, звука, сети, графики, ввода и многих других областей вашего проекта. < a href="comp-ManagerGroup">Подробнее
См. Словарь, затем выберите категорию Физика ) и попробуйте увеличить значение Итерации решателя по умолчанию от 10 до 20. - Если компоненты Rigidbody, связанные с соединениями, неправильно реагируют на отскоки, откройте окно Physics (Редактировать > Настройки проекта, затем выберите категорию Physics__) и попробуйте увеличить значение скорости итераций решателя по умолчанию__ от 10 до 20.
- Никогда не используйте прямой доступ к преобразованию с компонентами Kinematic Rigidbody, соединенными соединениями с другими компонентами Rigidbody. При этом пропускается шаг, на котором PhysX вычисляет внутренние скорости соответствующих компонентов Rigidbody, в результате чего решатель выдает нежелательные результаты. Распространенным примером плохой практики является использование прямого доступа к преобразованию в 2D-проектах для переворачивания символов путем изменения Transform.TransformDirection в корневом элементе установки. Это работает намного лучше, если вы используете Rigidbody2D.MovePosition и Rigidbody2D.MoveRotation вместо этого.
- Избегайте больших различий в массах между компонентами Rigidbody, соединенными соединениями. Это нормально, когда одно твердое тело имеет вдвое большую массу, чем другое, но когда одна масса в десять раз больше другой, симуляция может стать нестабильной.
- Старайтесь избегать масштабирования, отличного от 1, в Transform, содержащем Rigidbody или Joint. Масштабирование может быть ненадежным во всех случаях.
- Если компоненты Rigidbody перекрываются при вставке в мир, и вы не можете избежать перекрытия, попробуйте уменьшить Rigidbody.maxDepenetrationVelocity, чтобы Rigidbody компоненты выходят друг из друга более плавно.