按A按钮时,AddForce不起作用

时间:2015-06-29 11:49:49

标签: unity3d

我按“A”按钮时尝试移动对象,但它不起作用。我用'B'按钮测试并移动了物体。为什么刚体对“A”按钮没有反应?

if (Input.GetKeyDown(KeyCode.A))
            rigidbody.AddForce(new Vector3(-5, 0, 0), ForceMode.Impulse);

1 个答案:

答案 0 :(得分:0)

“W”,“A”,“S”,“D”将不起作用,因为它们在Unity中的默认设置中进行映射。在偏好键映射中的某处。

现在,如果你想使用“A”。我相信它被映射为“左”或“左”两个尝试。

如果你在这里查看。 http://docs.unity3d.com/ScriptReference/KeyCode.A.html

使用上面的代码是正确的。但是他们并没有告诉任何人你需要先重新映射控件。

现在由于某种原因,这对你不起作用。然后使用。

if (Input.GetKey(KeyCode.A))

请注意,没有Down。为什么这样做和GetKeyDown不工作?

因为WASD被捆绑为Accel用于Anolog目的。所以Down,将无法正常工作,它从0.0读到1.0不幸的是,对于键盘,它从0.0变为1.0但是对于控制器,你会得到不同的结果,这取决于你轻轻按压或者用力按压。