ArticulationBody.AddRelativeTorque
Declaration
public void AddRelativeTorque(Vector3 torque, ForceMode mode = ForceMode.Force);Параметры
| Параметр | Описание |
|---|---|
| крутящий момент | Вектор крутящего момента в локальных координатах. |
| режим | Тип крутящего момента, который должен применяться. |
Описание
Применяет коэффициент torque к шарнирному соединению относительно его локальной системы координат.
Вы можете применять крутящий момент только к активному ArticulationBody. Если GameObject неактивен, AddRelativeTorque не оказывает никакого влияния.
ForceMode.Force и ForceMode.Acceleration модифицируют аккумулятор Угловой Скорости в Секунду, а ForceMode.Impulse и ForceMode.VelocityChange модифицируют аккумулятор Угловой Скорости в Шаг. Смешивание этих двух групп ForceModes не работает для Артикуляторных Тел и приведет к применению только аккумулятора Угловой Скорости в Секунду.
Более подробную информацию о том, как ForceMode влияет на угловую скорость, см. в Rigidbody.AddTorque.
Применение крутящего момента к ArticulationBody пробуждает это тело. Если величина крутящего момента равна нулю, то ArticulationBody не пробуждается.
Единица измерения — Нм (ньютон-метры).
Дополнительные ресурсы: AddTorque, AddRelativeForce.
// Rotate an object around its Y (upward) axis in response to // left/right controls. using UnityEngine; using UnityEngine.InputSystem;
public class ExampleClass : MonoBehaviour { public float torque = 10f; public ArticulationBody ab;
void FixedUpdate() { float turnInput = Keyboard.current.spaceKey.isPressed ? 1f : 0f; // Apply torque in physics loop ab.AddRelativeTorque(Vector3.up * torque * turnInput * Time.fixedDeltaTime); } }