电机将施加不超过最大值的力,以达到目标速度(以度/秒为单位)。
电机试图达到 JointMotor.targetVelocity 的角速率(以度/秒为单位)。
电机所能达到的角速率的上限是 targetVelocity
(如果 JointMotor.force 足够大)。
如果关节旋转速度超过了 targetVelocity
,电机将制动。
targetVelocity
为负值时将使电机反向旋转。force
是电机能够施加的最大扭矩。如果为零,则禁用电机。
当电机旋转速度超过 targetVelocity
时,如果 JointMotor.freeSpin 为 false,电机将制动。
如果 freeSpin
为 true,电机不制动。
另请参阅:useMotor、JointMotor。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Start() {
HingeJoint hinge = GetComponent<HingeJoint>();
JointMotor motor = hinge.motor;
motor.force = 100;
motor.targetVelocity = 90;
motor.freeSpin = false;
hinge.motor = motor;
hinge.useMotor = true;
}
}
修改电机不会自动启用电机。
启用电机会超控 spring(如果启用了弹簧)。如果重新禁用电机,弹簧将恢复。