人物简单移动!!!

控制人物移动两种简单方法:
方法一:通过对人物添加刚体组件实现移动;
原理:刚体的移动主要是通过对刚体一个向量力从而实现移动的!
代码如下:
public class  Move:MonoBehaviour
{
//定义一个float类型变量
public float speed=5.0f;

void  FixedUpdate()
{
          // float类型变量 moveHorizontal用来得到水平输入的值;
float   moveHorizontal=Input.GetAxis("Horizontal");
// float类型变量 moveHorizontal用来得到垂直输入的值;
float   moveVertical=Input.GetAxis("Vertical ");
//用上面的水平和垂直输入的值创建一个Vector3变量,作为刚体的速度;
Vector3 movement=new Vector3(moveHorizontal,0.0f,moveVertical);
//获取组件刚体的移动速度并为其赋值;
GetComponent<Rigidbody>().velocity=movement*speed;

}


}


方法二:通过对人物添加characterController组件来控制;
原理:主要通过一个simpleMove方法来实现的!
代码如下:
public class CharacterControllerMove:MonoBehaviour{
//
public  CharacterController  controller;
//定义一个int类型变量;
private int speed=10;

void   Start()
{
//获取到人物控制器组件;
controller=GetComponent<CharacterController>();

}
void Update()
{
//使用simplemove方法进行人物的移动;
controller.SimpleMove(new Vector3(Input.GetAxis("Horizontal")*speed,0,Input.GetAxis("Vertical")*speed));

}


}
好了,以上就是简单的移动方法了,写的不好的地方请多多指教吧!!!
哦!还有一点,很多人或许不太明白CharacterController与Rigidbody的区别;这里就简单说一下吧!
CharacterController是自带胶囊碰撞器,里面包含刚体属性;
Rigidbody就是刚体,使物体带有刚体的特征。


 















  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值