1.transform.Translate
float speed = 10; //定义速度
transform.Translate(Vector3.forward * speed *Time.deltaTime);
//朝向物体的前方前进,每秒前进10米,不乘Time.deltatime为每帧移动10米
由于transform.Translate()参数为Vector3的值,所以我们可以将任意VECTOR3的值带入
Vector3 target; //定义目标位置
transform.Translate((targettransform.position).normalized*speed*Time.deltatime); //按自身位置到目标位置的矢量进行移动
2.Rigidbody.velocity
使用此方法必须先给物体添加Rigidbody组件,利用Rigidbody给物体一个恒定速度
GetComponent().velocity = new Vector3(0, 0, speed); //给物体(0,0,speed)的三维速度 ,使用此方法会对重力产生影响,建议关闭重力,自行模拟
3.Rigidbody.AddForce和Rigidbody.AddRelativeForce
AddForce是给世界坐标上的力 可能与你物体朝向不一致,所以一般使用AddRelativeForce,给自身坐标轴向的力
public float Force = 10; //定义力的大小,public为了方便在INS面板改动
GetComponent<Rigidbody>().AddRelativeForce(Vector3.forward * Force);
//给物体自身前进方向的力,移动距离收到摩擦,自身重力影响,使用前先将这两个参数调节好