我遇到了来自OpenTK GetState
功能的错误返回值。
下面的代码计算自上一帧以来鼠标移动的距离,将x距离写入控制台。
Vector2 lastMousePos;
public static void MouseLook(Game game)
{
Vector2 delta = lastMousePos - new Vector2(OpenTK.Input.Mouse.GetState().X, OpenTK.Input.Mouse.GetState().Y);
lastMousePos += delta;
Console.WriteLine (delta.X);
}
但是,以或多或少的恒定速率滚动鼠标会产生以下值:
17
0
18
0
18
12
11
20
0
31
0
34
0
26
0
19
当鼠标观察时,这些零值导致可见的混蛋。是什么导致了他们的想法?