如何让动画在按键 w、a、s、and/or d 上播放并在按下 none 时停止?

How to make animation play on key press w, a, s, and/or d and stop when none of those are being pressed?

我用maya给他做了人形模型和走路动画(导出为fbx)。我可以让动画无限期地播放,但我希望它只在按下 w、a、s 或 d 时播放。然后我希望它在释放键时停止。

我将我的动画脚本附加到我的播放器对象。我还有一个动画组件,其中包含我的 "Player_Walk" 动画,它附加到我的播放器对象。是否需要其他一些组件才能使其正常工作?或者在脚本中初始化一些东西?或者?

这是我的脚本:

提前感谢您的帮助!如果需要更多信息,请告诉我。

P.S。类似这样的问题还有很多,但很多都是Unity 5发布前的回答,所以帮助不大。

缓存您的 Animation 组件,因为您调用了 Update() 以提高性能。

Animation anim;

void Awake()
{
    anim = GetComponent<Animation>();
}

void Update()
{
    if (Input.GetKeyDown(KeyCode.W) || Input.GetKeyDown(KeyCode.A) || Input.GetKeyDown(KeyCode.S) || Input.GetKeyDown(KeyCode.D))
        anim.Play();
    else
        anim.Stop();
}