我为相机写了一个鼠标功能。它运作良好。但唯一的问题是一开始,当我第一次用鼠标移动时,它会向左上方跳跃,然后效果很好。我不明白为什么会这样。
这里是鼠标功能。
float lastx = 0.0;
float lasty = 0.0;
void mouseMovement(int x, int y)
{
lastx = (float)x - lastx;
lasty = (float)y - lasty;
if((float)x > lastx)
Camera.RotateY((-lastx)*0.01);
else
Camera.RotateY(lastx*0.01);
if((float)y > lasty)
Camera.RotateX(lasty*0.01);
else
Camera.RotateX(-lasty*0.01);
lastx = (float)x;
lasty = (float)y;
Display();
}