本文共 830 字,大约阅读时间需要 2 分钟。
using UnityEngine;using System.Collections;////// 脚本位置:Player游戏对象身上/// 脚本功能:控制Player移动/// 创建时间:2015年11月30/// public class PlayerMove : MonoBehaviour{ // 主角运动速度 private float speed = 5f; // 主角身上刚体组件 private Rigidbody _rigidbody; void Start () { _rigidbody = GetComponent(); } // Update is called once per frame void Update () { // 通过更改刚体速度向量控制主角移动 _rigidbody.velocity = new Vector3 (Input.GetAxis ("Horizontal"), -0.5f, Input.GetAxis ("Vertical")) * speed; // 跳跃功能 if (Input.GetKeyDown (KeyCode.Space) ) { Jump(); } Debug.DrawRay(transform.position,Vector3.down,Color.black); } void Jump() { RaycastHit hit; if (Physics.Raycast (transform.position, Vector3.down, out hit)) { // 经测试得出默认距离是0.399,既transform.localScale.y的值 if (hit.distance <= 0.4f) { _rigidbody.AddForce (Vector3.up * 4000); } } } }
转载地址:http://aukii.baihongyu.com/