Rigidbody组件及相关API

时间:2021-05-09 12:17:03

Rigidbody:刚体组件,物理类。(与Rigidbody组件相关的代码尽量都写在FixedUpdate()方法中,如果写在Update()中有可能会卡顿)

属性:Mass:质量。
          Drag:空气阻力。
          Angular Drag:角阻力。受到扭曲力时的空气阻力。
 
Rigidbody.MovePosition(Vector3):使物体移动到Vector3的位置。
Vector3:目标点。
 public class Test
 {
     private void Update()
     {
         if (Input.GetKeyDown(KeyCode.W))
         {
             this.GetComponent<Rigidbody>().MovePosition(this.transform.position + Vector3.forward);
         }
     }
 }
上图代码:按下W键,物体向世界坐标系foward方向移动1的距离。
Rigidbody.AddForce(Vector3,ForceMode):给物体添加一个力,按世界坐标系移动。
Rigidbody.AddrRelativeForce(Vector3,ForceMode):给物体添加一个力,按自身坐标系移动。
Vector3:力的方向和大小。
ForceMode:力的模式(枚举类型)。
         ForceMode.Acceleration:加速度。
         ForceMode.Force:力,通常用于设置真实的物理现象。
         ForceMode.impulse:冲击力,通常用于瞬间发生的力。
         ForceMode.VelocityChange:速度的变化。