飞翔の蓝天 发表于 2014-10-3 09:35

人物行走的问题

给人物加上了走路脚本以后,人物虽然能够移动,但是只能平移

飞翔の蓝天 发表于 2014-10-3 09:36

using UnityEngine;
using System.Collections;

public class Player : MonoBehaviour {
      public int m_movSpeed=2;

      Transform m_transform;
      CharacterController m_ch;

      // Use this for initialization
      void Start () {
                //获取组件
                m_transform = this.transform;
                m_ch = this.GetComponent<CharacterController> ();
      }
      
      // Update is called once per frame
      void Update () {
                Control ();
      }
      void Control(){

                float xm=0, ym=0, zm=0;
               
                if(Input.GetKey(KeyCode.W)){
                        zm+=m_movSpeed*Time.deltaTime;
                }
               
                if(Input.GetKey(KeyCode.A)){
                        xm-=m_movSpeed*Time.deltaTime;
                }
               
                if(Input.GetKey(KeyCode.S)){
                        zm-=m_movSpeed*Time.deltaTime;
                }
               
                if(Input.GetKey(KeyCode.D)){
                        xm+=m_movSpeed*Time.deltaTime;
                }
               
                m_ch.Move(m_transform.TransformDirection(new Vector3(xm,ym,zm)));
      }

}

飞翔の蓝天 发表于 2014-10-3 09:37

人物移动时候总是飘在半空中,把坐标轴向下调也不管用,开始游戏以后,人物自动跳到半空中。

runtime 发表于 2014-10-8 09:28

飞翔の蓝天 发表于 2014-10-3 09:37 static/image/common/back.gif
人物移动时候总是飘在半空中,把坐标轴向下调也不管用,开始游戏以后,人物自动跳到半空中。

xm,zm   的初始值设置为 你地面的x,z坐标

fhk20032003 发表于 2017-4-11 17:41

很不错

悟--李怀东 发表于 2017-4-11 18:03

楼主是超人

光棍一辈子 发表于 2017-4-11 17:51

好帖就是要顶

okxugang 发表于 2017-4-11 17:41

真心顶

tiandaowuqin 发表于 2017-4-11 17:14

说的非常好

tigerzp 发表于 2017-4-21 09:49

很不错
页: [1]
查看完整版本: 人物行走的问题