ArticulationBody
Описание
Тело, являющееся частью артикуляции физики.
Артикуляция представляет собой набор тел, расположенных в логическом дереве. Связь родитель-детёнок в этом дереве отражает, что тела имеют ограниченное относительное движение. Артикуляция решается с помощью Featherstone Solver, который работает в уменьшенных координатах — то есть каждое тело имеет относительные координаты к своему родителю, но только вдоль разблокированных степеней свободы. Это гарантирует отсутствие нежелательного растяжения.
Как и в обычных Соединениях, для каждой пары соединённых артикуляторных тел есть два якоря. Один якорь определен в системе отсчета родительского тела, а другой — в системе отсчета дочернего тела. Изменение ограничений непосредственно влияет на допустимое пространство для относительных положений двух якорей. Например, ArticulationDofLock.LockedMotion вообще не допускает относительного движения.
Свойства
| Свойство | Описание |
|---|---|
| anchorPosition | Положение якоря по отношению к этому элементу. |
| anchorRotation | Вращение якоря относительно этого тела. |
| angularDamping | Коэффициент амортизации, который влияет на то, как это тело сопротивляется вращениям. |
| angularVelocity | Угловая скорость тела, определенная в пространстве мира. |
| automaticCenterOfMass | Автоматический расчет центра массы. |
| automaticInertiaTensor | Автоматический расчет тензора инерции. |
| centerOfMass | Центр масс тела, определенный в локальном пространстве. |
| collisionDetectionMode | Режим обнаружения столкновений ArticulationBody. |
| dofCount | Количество степеней свободы тела. |
| driveForce | Движущая сила в уменьшенных координатах. |
| excludeLayers | Дополнительные слои, которые все коллайдеры, прикрепленные к этому ArticulationBody, должны исключать при решении, может ли Collider вступить в контакт с другим Collider. |
| immovable | Позволяет указать, что это тело не является подвижным. |
| includeLayers | Дополнительные слои, которые все коллайдеры, прикрепленные к этому ArticulationBody должны включать при решении, может ли Collider вступить в контакт с другим Collider. |
| index | Индекс тела в иерархии артикуляционных тел. |
| inertiaTensor | Тензор инерции этого тела. |
| inertiaTensorRotation | Вращение тензора инерции. |
| isRoot | Указывает, является ли этот корпус корневым корпусом артикуляции (только для чтения). |
| jointAcceleration | Совместное ускорение в уменьшенных координатах. |
| jointForce | Объединенные силы в уменьшенных координатах. |
| jointFriction | Позволяет указать величину трения, которое применяется в результате движения родительского тела относительно этого тела. |
| jointPosition | Совместная позиция в уменьшенных координатах. |
| jointType | Тип соединения, соединяющего этот кузов с его родительским кузовом. |
| jointVelocity | Совместная скорость в уменьшенных координатах. |
| linearDamping | Коэффициент амортизации, который влияет на то, как это тело сопротивляется линейному движению. |
| linearLockX | Тип блокировки вдоль оси X движения. |
| linearLockY | Тип блокировки вдоль оси Y движения. |
| linearLockZ | Тип блокировки вдоль оси движения Z. |
| linearVelocity | Линейная скорость тела, определенная в мировом пространстве. |
| mass | Масса этого тела сочленения. |
| matchAnchors | Должен ли родительский якорь рассчитываться автоматически или нет. |
| maxAngularVelocity | Максимальная угловая скорость шарнирного соединения, измеренная в радианах в секунду. |
| maxDepenetrationVelocity | Максимальная скорость сочленения при выходе из состояния проникновения. |
| maxJointVelocity | Максимальная скорость соединения шарнирного тела в уменьшенных координатах. |
| maxLinearVelocity | Максимальная линейная скорость шарнирного соединения, измеренная в метрах в секунду. |
| parentAnchorPosition | Положение якоря относительно родительского тела. |
| parentAnchorRotation | Вращение якоря относительно родительского тела этого тела. |
| sleepThreshold | Нормальный энергетический порог массы, ниже которого объекты начинают спать. |
| solverIterations | solverIterations определяет, насколько точно разрешаются соединения тела шарнира и контакты столкновения. |
| solverVelocityIterations | solverVelocityIterations влияет на то, насколько точно соединения тела и контакты столкновения разрешаются во время отскока. |
| swingYLock | величина конического угла поворота по отношению к оси Y. |
| swingZLock | Величина конического угла поворота относительно оси Z. |
| twistLock | Тип блокировки для крутящего движения. |
| useGravity | Управляет влиянием силы тяжести на этот артикулятор. |
| worldCenterOfMass | Центр масс тела, определенный в мировом пространстве (только для чтения). |
| xDrive | Свойства привода вдоль или вокруг X. |
| yDrive | Свойства привода вдоль или вокруг Y. |
| zDrive | Свойства привода вдоль или вокруг Z. |
Открытые методы
| Метод | Описание |
|---|---|
| AddForce | Применяет силу к ArticulationBody. |
| AddForceAtPosition | Применяет силу в определенном положении, в результате чего на объект воздействуют крутящий момент и сила. |
| AddRelativeForce | Применяет силу к Артикуляционному Телу относительно его локальной системы координат. |
| AddRelativeTorque | Применяет крутящий момент к шарнирному соединению относительно его локальной системы координат. |
| AddTorque | Добавить крутящий момент к корпусу шарнира. |
| GetAccumulatedForce | Возвращает силу, которую ArticulationBody накопил до шага моделирования. |
| GetAccumulatedTorque | Возвращает крутящий момент, который ArticulationBody накопил до шага моделирования. |
| GetClosestPoint | Возвращает точку на теле артикуляции, которая ближе всего к заданной точке. |
| GetDenseJacobian | Вычисляет плотную матрицу Якоби иерархии сочленённого тела и записывает её в переданную структуру. |
| GetDofStartIndices | Вычисляет и считывает индексы начала данных уменьшенных координат в буфере данных уменьшенных координат для каждого тела артикуляции в иерархии. |
| GetDriveForces | Считывает всю иерархию Артикуляторных тел и заполняет предоставленный список поплавков силами Артикуляторного привода. |
| GetDriveTargets | Читает обратно цели привода сочленения тела сочленения всей иерархии к предоставленному списку поплавков. |
| GetDriveTargetVelocities | Читает обратно сочленения тела совместного привода целевые скорости всей иерархии к поставленному списку поплавков. |
| GetJointAccelerations | Читает обратно ускорения сочленения тела сочленения всей иерархии к поставленному списку поплавков. |
| GetJointCoriolisCentrifugalForces | Заполняет предоставленный список поплавков силами, необходимыми для противодействия силам Кориолиса и центробежным силам для каждого Артикуляторного Тела в сочленении. |
| GetJointExternalForces | Заполняет предоставленный список поплавков силами, необходимыми для противодействия любым существующим внешним силам (применяемым с помощью ArticulationBody.AddForce или ArticulationBody.AddTorque) для каждого Артикуляторного Тела в сочленении. |
| GetJointForces | Читает обратно сочленения тела совместные силы всей иерархии к поставленному списку поплавков. |
| GetJointForcesForAcceleration | Возвращает силы, необходимые для достижения телом заданных ускорений в уменьшенном пространстве. |
| GetJointGravityForces | Заполняет предоставленный список поплавков силами, необходимыми для противодействия гравитации для каждого тела сочленения в сочленении. |
| GetJointPositions | Читает обратно позиции сочленения тела сочленения всей иерархии к поставленному списку поплавков. |
| GetJointVelocities | Читает обратно сочленения тела совместные скорости всей иерархии к поставленному списку поплавков. |
| GetPointVelocity | Получает скорость тела артикуляции в указанном worldPoint в глобальном пространстве. |
| GetRelativePointVelocity | Скорость относительно шарнирного соединения в точке relativePoint. |
| IsSleeping | Показывает, находится ли корпус артикуляции в спящем состоянии. |
| PublishTransform | Чтение положения и вращения Артикулятора из физической системы и применение их к соответствующему компоненту Transform. |
| ResetCenterOfMass | Сброс центра массы тела. |
| ResetInertiaTensor | Сброс значения тензора инерции и вращения. |
| SetDriveDamping | Задает значение амортизации указанного привода. |
| SetDriveForceLimit | Задает предел силы указанного привода. |
| SetDriveLimits | Задает нижний и верхний пределы диска. |
| SetDriveStiffness | Задает значение жесткости указанного диска. |
| SetDriveTarget | Установка целевого значения для указанного диска. |
| SetDriveTargets | Назначает целевые значения привода сочленения для всей иерархии сочленений. |
| SetDriveTargetVelocities | Назначает целевые скорости привода шарнирного соединения тела для всей иерархии тел. |
| SetDriveTargetVelocity | Задает значение целевой скорости указанного диска. |
| SetJointForces | Назначает совместные силы тела для всей иерархии тел. |
| SetJointPositions | Назначает позиции суставов тела для всей иерархии тел. |
| SetJointVelocities | Назначает скорости соединения тела артикуляции для всей иерархии тел. |
| Sleep | Принуждает тело к сну. |
| SnapAnchorToClosestContact | Прикрепить якорь к ближайшему контакту между соединенными телами. |
| TeleportRoot | Телепортирует корневую часть сустава в новую позу. |
| WakeUp | Заставляет пробудиться тело артикуляции. |
Унаследованные члены 4
Свойства
| Свойство | Описание |
|---|---|
| enabled | True, если это Поведение включено, в противном случае false. |
| isActiveAndEnabled | Проверяет, включён ли компонент, прикреплен ли он к GameObject, который активен в иерархии, и вызван ли OnEnable компонента. |
| gameObject | GameObject, к которому прикреплен данный компонент. Компонент всегда прикрепляется к игровому объекту. |
| tag | Тег этого игрового объекта. |
| transform | Transform прикреплен к этому GameObject. |
| transformHandle | TransformHandle этого GameObject. |
| hideFlags | Должен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем? |
| name | Имя объекта. |
Открытые методы
| Метод | Описание |
|---|---|
| BroadcastMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте или любом из его дочерей. |
| CompareTag | Проверяет тег GameObject на соответствие определенному тегу. |
| GetComponent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент. |
| GetComponentInChildren | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любого ребенка GameObject. |
| GetComponentIndex | Получает индекс компонента на его родительском GameObject. |
| GetComponentInParent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любой родитель GameObject. |
| GetComponents | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент. |
| GetComponentsInChildren | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и на любого ребенка GameObject. |
| GetComponentsInParent | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и любой родитель GameObject. |
| SendMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте. |
| SendMessageUpwards | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте и на каждом предшественнике поведения. |
| TryGetComponent | Получает компонент указанного типа, если он существует. |
| GetInstanceID | Получает экземпляр ID объекта. |
| ToString | Возвращает имя объекта. |
Статические методы
| Метод | Описание |
|---|---|
| Destroy | Удаляет GameObject, компонент или ресурс. |
| DestroyImmediate | Немедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования. |
| DontDestroyOnLoad | Не уничтожать целевой Объект при загрузке нового Scene. |
| FindAnyObjectByType | Получает любой активный загруженный объект типа Type. |
| FindFirstObjectByType | Получает первый активный загруженный объект типа Type. |
| FindObjectsByType | Получает список всех загруженных объектов типа Type. |
| Instantiate | Клонирует исходный объект и возвращает клон. |
| InstantiateAsync | Захватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation. |
Операторы
| Оператор | Описание |
|---|---|
| bool | Существует ли объект? |
| оператор!= | Сравнивает, если два объекта ссылаются на разные объекты. |
| оператор == | Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту. |