Unity中Input.GetAxis方法的返回值含义

来源:互联网 发布:h5dm新域名 编辑:程序博客网 时间:2024/05/16 23:45

Unity中Input.GetAxis方法的返回值含义

方法:public static float GetAxis(string axisName)

我对返回值的理解

返回输入设备在方法参数axisName所指定的轴上的位移量,该位移量由此次调用该方法时输入设备在轴上的位置与上次调用该方法时输入设备在轴上的位置相减得出。

官方代码文档的解释

Returns the value of the virtual axis identified by axisName.
返回根据参数名所指定的虚拟轴上的数值。

检验代码

通过下面的代码对我的理解进行检验,在Unity中运行场景后,控制台始终输出equal,初步证实我的猜想应该是正确的。而后我把Update方法改为FixedUpdate,再次运行,控制台仍然始终输出equal,;再把FixedUpdate的频率从默认的每秒50次改成每秒5次,运行场景仍然输出equal

private float lastFrameMousePositonY = 0;void Update(){    // 此帧中鼠标在Y方向上相对上一帧的偏移量    float offset = Input.mousePosition.y - lastFrameMousePositonY;    if(Input.GetAxis("Mouse Y") - offset < 0.0001)    {        print("equal");    }    lastFrameMousePositonY = Input.mousePosition.y;}

输出结果:

输出结果截图

0 0