Originally Posted by Glymbol
I had to try very hard to draw flat line with G400 even on the lowest 400 CPI. What is the purpose of nearly no prediction? It doesn't help drawing straight horizontal or vertical lines for sure. Do you believe Zowie's BS about prediction in every sensor? There's no reason for that really. They lied about no prediction in EC1/2. When the mouse was released they obviously couldn't hide it so they just lied even more.http://www.techpowerup.com/126874/ZOWIE_Announces_HeatoN_s_EC-series_of_Mice.html
see Whalib's comment. In my opinion Danny Ramkvist's answer is just bull****. Of course 1000Hz may help to lower prediction by small margin, but since prediction works only for horizontal / vertical movement the rest of his email is just nonsense. Optical sensor doesn't read height difference, why would it? Even if it could, why we don't see this drawing diagonal lines?
I must admit I believed this at first, but after thinking for a while it doesn't make any sense to me. If I can't see and feel prediction / angle snapping then a mouse does not have it.
There's even Bullveyr's post about this at ESR: http://www.esreality.com/?a=post&id=1933667#pid1933667
wow interesting link (EC announcement)... it's really incredible how much bullsh_t they've written in that response regarding prediction.
1. Not all mice have prediction
2. No mouse needs any prediction to track correctly (although if they do in order to "smoothen" out the jittery tracking they have they're just crap imho)
3. No mouse would track like what looks like the output of a square pulse generator just because there is no prediction
4. It wouldn't be caused by texture of your mouse pad anyway
I don't even know if this is because of pure technical ignorance on their part or just a blatant lie. Why?
Well here is how it works so you can decide yourself: The sensor takes small pictures of the surface at a high framerate. It then compares each picture to the previous one and calculates the offset on the x- and y-axis. Well and that's what you get to see on your screen. So why would it track like pictured there without prediction? It's not like it tracks every single fiber of your mousepad like "here is a fiber, here is a gap, here is a fiber etc." like how they want you to think.
Prediction/correction is no black magic either: When you move the mouse in a straight line from left to right (x-axis) and you happen to also move it for just a few pixels up or down (y-axis) it will simply ignore that y-axis movement in order so you can draw a perfectly straight line. There would be a maximum amount of pixels your movement could deviate from this straight line where your cursor would still be moving in this exact straight line. I'd call it something like delta_y_max and as soon as your movement deviates for more than this delta_y_max you would "break out" of this straight line. Of course the same exists for the x-axis... anyway the higher that delta_y_max or delta_x_max is set at the more present/obvious the prediction will be.
For example setting it to 1 pixel would mean that when you draw a straight line and you move it up or down for 1 pixel you will still be on this straight line (therefore you won't see this 1 pixel movement on the screen). But as soon as you deviate for 2 pixels for example you'll break out of this straight line and you can finally see this movement on screen. This is technically the lowest value prediction can have and while I don't know which specific settings manufacturers use I'd say it would be acceptable. Not perfect and still noticeable by experienced users but acceptable.
A setting of 0 would mean no prediction at all, because as soon as you deviate from the straight line for just 1 pixel it will be automatically shown on screen... that's it. And there definitely are mice out there that work like this.
Oh yeah and this is why prediction actually has nothing to do with polling rate (although it can look like prediction). When you move your mouse at a high speed in circles at a very low polling rate you'll notice that the circles it draws (in paint for example) will look more like polygons than circles and the faster it moves the more angular it will look. At 125Hz polling rate your mouse will send the current position of the cursor every 8ms to your PC... and everything that happens between stays unknown to the PC. So at high speeds the cursor will actually not move smoothly but make some big jumps and in paint the program will simply draw a straight line between each of these jumps/positions. The higher the polling rate the smoother the movement will be and the tinier the jumps. Anyway just because paint draws straight lines between each input every 8ms it doesn't mean that this is prediction. It is still where your mouse actually was at this point in time, only the moves between this point in time and 8ms before is not known. The positioning is still correct though and I can't stress this enough: it's just paint drawing straight lines between each input!Edited by MONVMENTVM - 2/1/12 at 11:38am