Unity3D随着角色控制器移动

时间:2013-08-20 09:53:51

标签: unity3d game-physics

我正在使用一个带有角色控制器组件的太空舱。移动它我正在使用:

public float player_speed=0.6f;
if(Input.GetKey(KeyCode.W)){
    this.GetComponent<CharacterController>().Move(new Vector3(transform.forward.x*player_speed,0f,transform.forward.z*player_speed));
}

但是当我将player_speed的值设置为0.3f时,它会开始飞行。我不知道为什么。 有人可以向我解释一下吗?

1 个答案:

答案 0 :(得分:0)

角色控制器不会自动添加重力,因此您需要自己实施。最简单的方法是将重力保持为0(或小数字),如果角色接地,然后如果他没有接地,则逐渐增加重力(最大值)。