FPS is just a measurement of how many times a certian function loops every second which means all movement has to be put on timers or else everything will go monkey
with fps fluctuations.
If mouse events are not properly timed, certain frame rates can screw with them. That, or the extra calculations involved to make vsync actually work could cause mouse event delays.
vsync helps to match frame rates to the refresh rate of your monitor so you dont get a new frame sent throw half way a screen refresh which would give you the tearing. this is why LCD screen still have a refresh rate.
ok lets example, lets saying your playing a game on a monitor that has a refresh rate set to 75Hz and your getting 100FPS. that means the monitor is updating itself 75 times per second but the card is updating the display 100 times a second which is 33% faster than the monitor is updating. which means in the time between the monitor updates/refreshes the video card has drawn one full frame and a third of another frame. that third of the next frame will overwrite the top third of the last frame and then be sent to the display. the video card then finishes off the rest of that frame and then draws up the next 2 thirds of the next frame and the display then refreshes again. as you can see this would cause the tearing effect as 2 out of every 3 times the screen refreshes, either the top or bottom third would be disjointed from the rest of the display. you wont notice that much on a display that is not doing much but if your looking around quickly this will become more noticeable.
but vsync should solve the tearing issue if its setup right by creating a rule that says the back buffer can not copy to the frame buffer until the display refreshes. with a frame rate higher than the refresh rate this is fine. the back buffer is filled and the system waits for the refresh to happen before the back buffer is copied to the frame buffer and the the graphics card draws a new frame in the back buffer, the process then waits again for a refresh, once the refresh has happened the back buffer is copied to the frame buffer and the process starts over again. this effectively caps your frame rate to the refresh rate of the display being used.
Let's say you're playing the sequel to the game you was playing before but it has better graphics. your at 75Hz again but your getting 50FPS which is 33% slower than the refresh rate of the display. this means that every time the display refreshes the graphics card has drawn two thirds of the next frame. so when you look at it your your monitor just refreshed and frame one is copied in to the frame buffer and two thirds of frame two gets drawn in the back buffer but the monitor had just refreshed again and it grabs frame one from the frame buffer for the first time. now the graphics card finishes off the last third of frame two but has to wait till the display refreshes again before it can copy it the frame buffer as it can not update the frame buffer till right after a display refresh. this time the display refreshes grabbing frame one for a second time and after the refresh happens the graphics card then copies frame two the frame buffer. the graphics card then draws two thirds of frame three in the back buffer when the display refreshes again grabbing frame two for the first time. the graphics card then finishes off the last third of the third frame but again has to wait for a refresh to happen before it can copy the new frame to the frame buffer. when the refresh happens the display grabs frame two for a second time and then the graphics card copies frame three to the frame buffer. the display has now been throw four cycles but there has only been two frames. at a refresh rate of 75Hz that means you will only see 37.5FPS. thats a lot less than the 50FPS the graphics card is capable of putting out. this is caused by the graphics card having to waste time waiting after finishing a frame in the back buffer because it can not copy it out and has no where else to draw the next frame.
essentially this means that with double-buffered vsync the framerate can only be equal to a discrete set of values equal to refresh. That means if you're we talk about a 60Hz refresh rate the only framerates you can get are 60, 30, 20, 15, 12, 10, etc. as you can see there is a big drop from 60 FPS to 30 FPS and any frame in between 60FPS and 30FPS that your graphics card would normally put out will get dropped to 30FPS.
i guess this why some people hate it but if you have a frame rate that mostly stays above your refresh rate then generally vsync will be a good thing.
there is a triple buffering technique that solves this vsync problem
lets use the 50FPS at 75Hz example. frame one is drawn and copied to the frame buffer and two thirds of frame two a drawn in the back buffer. the display refreshes and frame one is grabbed for the first time. the last third of frame two is drawn in the back buffer and the first third of frame three is drawn in the second back buffer (this is where the term triple buffering comes from) the refresh happens and screen one is grabbed for a second time and frame two is copied to from the back buffer to the frame buffer and the first part of frame three is copied from the second back buffer to the back buffer. the last two thirds of frame three are drawn in the back buffer. the refresh happens and frame two is grabbed for the first time, now frame three is copied to the frame buffer and the process starts over again. this time you got 2 frames but in only 3 refresh cycles. thats two thirds of the refresh rate which is 50FPS which is the same as what you would have been getting with vsync turned on. triple buffering essentially give the graphics card someplace to keep drawing frames while it waits to copy the back buffer to the frame buffer so it dose not have to waste time waiting for the refresh to happen. not every game has support for triple buffering, in fact its not to common. it can also cost a little performance to run as it uses more VRAM for the buffers along with the time spent copying all them around. triple buffering is imo a better option to the normal vysnc to stop tearing unless you consider the fact you FPS is capped a downside which is a bit stupid as you can not see any FPS higher than your refresh rate anyway.
so its not an issue with the mouse tho its just the way the frames and refresh rate are out of sync that makes jumpy