关于Unity虚拟轴的问题

关于利用虚拟轴控制角色移动的问题:
运行时,未按下任何键,角色为何自动朝(-1,1)方向移动?
这是虚拟轴的设定,都是默认设定:unity版本2020.3.27f1c1

img

这是代码:

public float MoveSpeed = 2.0f;
private Vector2 dir = new Vector2();
private void MoveControl()
    {
        dir.x = Input.GetAxis("Horizontal");
        dir.y = Input.GetAxis("Vertical");
        dir.Normalize(); //将x y两个方向的向量整合
        transform.position += new Vector3(dir.x, dir.y, 0.0f) * MoveSpeed * Time.deltaTime;
    }

但利用GetKey则没有任何问题

private void MoveControl()
    {
        if (Input.GetKey(KeyCode.A))
        {
            transform.Translate(Vector2.left * Time.deltaTime * MoveSpeed);
        }
        if (Input.GetKey(KeyCode.D))
        {
            transform.Translate(Vector2.right * Time.deltaTime * MoveSpeed);
        }
        if (Input.GetKey(KeyCode.W))
        {
            transform.Translate(Vector2.up * Time.deltaTime * MoveSpeed);
        }
        if (Input.GetKey(KeyCode.S))
        {
            transform.Translate(Vector2.down * Time.deltaTime * MoveSpeed);
        }
    }

在网上搜好像没有人遇到过这种问题,求帮助!谢谢!