Unity3d - Input.GetKey returns 多次为真

Unity3d - Input.GetKey returns true more than once

我想使用键盘输入在场景中移动我的对象。为了完成这项工作,我创建了一个空的游戏对象并向其附加了一个 .cs 文件。此 .cs 文件的代码如下:

void Update()
{
     if (Input.GetKey ("up") ) {
         Debug.Log("up");
     }
     else if (Input.GetKey ("down") ) {
         Debug.Log("down");
     }
 }

我只按了一次上键,它在吊上写输出字符串7次。我不应该使用这个函数来处理键盘输入吗?

请参考http://docs.unity3d.com/ScriptReference/Input.GetKey.html

Returns 当用户按下由名称标识的键时为真。 考虑自动开火

如果您查看输入 class,您可以找到其他更有用的函数。