I am wondering the best way to retrieve and handle mouse input for a first person camera. The idea is that the speed at which the camera turns does not depend on frame rate, i.e. 30 FPS plays the same as 1000 FPS.
One way to do this:
Record cursor position each frame
Reset cursor position to middle of window each frame
Scale that by some constant
Theoretically, this would produce constant camera speed, because the mouse would move more each frame at a lower frame rate, and move less at a higher frame rate. However, this doesn't work because at high frame rates, it is very possible that the cursor will move less than a pixel each frame, and you would get no movement.
How do you implement first person cameras?
If you use the mentioned method, how do you get around the flaws?