Version: 2022.1
public JointMotor motor ;



The motor tries to reach JointMotor.targetVelocity angular velocity in degrees per second. The motor will only be able to reach targetVelocity, if JointMotor.force is sufficiently large. If the joint is spinning faster than targetVelocity the motor will brake. A negative targetVelocity will make the motor spin in the opposite direction.

force 是电机能够施加的最大扭矩。如果为零,则禁用电机。

当电机旋转速度超过 targetVelocity 时,如果 JointMotor.freeSpin 为 false,电机将制动。 如果 freeSpin 为 true,电机不制动。


using UnityEngine;

public class Example : MonoBehaviour { void Start() { var hinge = GetComponent<HingeJoint>();

// Make the hinge motor rotate with 90 degrees per second and a strong force. var motor = hinge.motor; motor.force = 100; motor.targetVelocity = 90; motor.freeSpin = false; hinge.motor = motor; hinge.useMotor = true; } }


启用电机会超控 spring(如果启用了弹簧)。如果重新禁用电机,弹簧将恢复。