Unity 第三人称人物移动 |
您所在的位置:网站首页 › unity角色移动代码 › Unity 第三人称人物移动 |
1,创建一个简单的物体作为角色 3,物体需要跳跃:当按下空格键,AddForce可以给物体一个力,而Vector.up可以控制力的方向向上 if(Input.GetKeyDown(KeyCode.Space)) { this.GetComponent().AddForce(Vector3.up * 6000); }4,为了使得物体不摔倒,使用eulerAngles给物体一个角度判断` if ((this.transform.eulerAngles.x > 90 && this.transform.eulerAngles.x 90 && this.transform.eulerAngles.z public float speed = 0.1f; //定义一个速度 void Update() { //控制物体的移动 transform.Translate(0, 0, speed * Input.GetAxis("Vertical")); transform.Rotate(0, speed *20* Input.GetAxis("Horizontal"),0); //实现跳跃的效果 if(Input.GetKeyDown(KeyCode.Space)) { this.GetComponent().AddForce(Vector3.up * 6000); } //防止物体倒下(如果是角色控制器可以直接面板调整) if ((this.transform.eulerAngles.x > 90 && this.transform.eulerAngles.x 90 && this.transform.eulerAngles.z public Transform player; public float speed_one=10f; public float speed_two=10f; //使用speed_one,speed_two可以调整玩家和相机的距离 private float smooth = 1f; void LateUpdate() { Vector3 camera_felow = player.position + Vector3.up * speed_one - player.forward * speed_two; transform.position = Vector3.Lerp(transform.position, camera_felow, Time.deltaTime * smooth); transform.LookAt(player.position); } } |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |