人物行走的问题
给人物加上了走路脚本以后,人物虽然能够移动,但是只能平移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 static/image/common/back.gif
人物移动时候总是飘在半空中,把坐标轴向下调也不管用,开始游戏以后,人物自动跳到半空中。
xm,zm 的初始值设置为 你地面的x,z坐标 很不错 楼主是超人 好帖就是要顶 真心顶 说的非常好 很不错
页:
[1]