Overclock.net › Forums › Components › Mice › DPI depending on monitor resolution?
New Posts  All Forums:Forum Nav:

DPI depending on monitor resolution? - Page 2

post #11 of 26
Quote:
Originally Posted by Glymbol View Post

Of course! If you are able to aim at any target, no matter how far it is, then you don't need any better precision. I will repeat this again: sensitivity (including m_yaw, m_pitch) and screen resolution are the only settings responsible for so called "pixel skipping". DPI doesn't have connection with this issue. It's simply "speed" of your pointer on desktop or rotation in FPS game. That means you could use 5000 DPI mouse and still "skip" pixels.

thats not entirely true: dpi affects pixel skipping.
for example double dpi with half sens does decrease the minimum detectable movement of the mouse, therefore the pixel skipping.
What i was saying is that does not increase the accuracy: the aim at lower dpi can be better even with pixel skipping in my experience, because it is more conrollable (you deal with a more defined turning, even if less smooth).
groan
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 750 Asus p7p55d-pro hd 4890 Vapor-x corsair 4Gb ddr3 
Hard DriveOSMonitorKeyboard
Western Digital 500Gb CRT all the life, secondary wide LCD shit logitech ultraflat, G15 
PowerCaseMouseMouse Pad
Corsair 650W antec five hundred ime 3.0, DA 3.5g, Puretrak valor[preordered] puretrak talent, destrucktro[destructed], QCK+ 
  hide details  
Reply
groan
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 750 Asus p7p55d-pro hd 4890 Vapor-x corsair 4Gb ddr3 
Hard DriveOSMonitorKeyboard
Western Digital 500Gb CRT all the life, secondary wide LCD shit logitech ultraflat, G15 
PowerCaseMouseMouse Pad
Corsair 650W antec five hundred ime 3.0, DA 3.5g, Puretrak valor[preordered] puretrak talent, destrucktro[destructed], QCK+ 
  hide details  
Reply
post #12 of 26
It's an indirect influence, if the yaw/pitch/sens/resolution values are so high that you start skipping pixels, decreasing those values and increasing dpi could be beneficial.

The whole idea behind more dpi is so that you can lower these values if need be.
Desktop (Main)
(20 items)
 
  
CPUMotherboardGraphicsRAM
Intel Core i7 2600K @4.5Ghz Gigabyte P67-UD4-B3 MSI Twin Frozr Geforce 770 GTX 2GB Corsair Vengeance DDR3 1600Mhz 
Hard DriveHard DriveHard DriveHard Drive
Samsung 840 Pro Seagate Barracuda 1.5 TB Seagate Barracuda 1.5 TB Seagate Barracuda 4TB 
Optical DriveCoolingOSMonitor
Le random dvd writer Corsair Hydro Series™ H100i Windows 8.1 Professional 64 bit iiyama ProLite G2773HS 
KeyboardPowerCaseMouse
Battlefield 3™ Razer BlackWidow Ultimate Gaming... Truepower Quattro 850Watt Corsair 600T Black Mionix Avior 7000 
Mouse PadAudioAudioAudio
Puretrak Talent ASUS Xonar Essence ST Sennheiser HD650 Musical Fidelity X-Can v3 
  hide details  
Reply
Desktop (Main)
(20 items)
 
  
CPUMotherboardGraphicsRAM
Intel Core i7 2600K @4.5Ghz Gigabyte P67-UD4-B3 MSI Twin Frozr Geforce 770 GTX 2GB Corsair Vengeance DDR3 1600Mhz 
Hard DriveHard DriveHard DriveHard Drive
Samsung 840 Pro Seagate Barracuda 1.5 TB Seagate Barracuda 1.5 TB Seagate Barracuda 4TB 
Optical DriveCoolingOSMonitor
Le random dvd writer Corsair Hydro Series™ H100i Windows 8.1 Professional 64 bit iiyama ProLite G2773HS 
KeyboardPowerCaseMouse
Battlefield 3™ Razer BlackWidow Ultimate Gaming... Truepower Quattro 850Watt Corsair 600T Black Mionix Avior 7000 
Mouse PadAudioAudioAudio
Puretrak Talent ASUS Xonar Essence ST Sennheiser HD650 Musical Fidelity X-Can v3 
  hide details  
Reply
post #13 of 26
Let me give you a visual representation of how CPI interacts with monitor resolution when it comes to 3D FPS such as Q3.

Let's draw in your mind the player model, see it from third person view for now.
Draw a big huge sphere around it, centered on the POV-camera (which is where the camera is fitted "into" the player model, so it's where you see the action from).
This sphere doesn't have a curved surface outside, but it's a field of points, the number of which depend on how "low" your in-game sensitivity is.
Each point represents seconds of an angle (or even lower) on the 3D space, so you will have a dot matrix in sphere shape surrounding the player model.
All those points are where the game "allows you to aim", or where the projectiles will be directed when you shoot.
Now, get a squared matrix where all the points are in an equal distance, with the number of dots per columns and rows equal to CPI.
Put that matrix on a plain surface, and "push" it towards the sphere until the extremes intersect.
So where your mouse aims is that squared matrix.
Then the game interprets that info and places the pointer on the closest point of the sphere.

As you can guess, depending on your in-game settings there are going to be more or less dots on the sphere, as this won't change in size, but it will change in dot density.
When it comes to the CPI matrix, it will get bigger, to the point that this precision will get lost on the sphere at some point.

Enter your computer monitor with it's resolution :
Project the sphere and the CPI matrix on your monitor's pixel matrix.

When you have "perfect pixel precision", it means that the CPI matrix, the projected sphere matrix and your monitor resolution are "overlapping", as in 1 pixel corresponds to only one CPI count dot, and that corresponds to one possible angle in-engine. (That's a lot harder to achieve than you might think)

If you have higher CPI than that and your game permits it, you can aim on a per sub-pixel basis, which will allow you to position your pointer in-game on a higher resolution than your projected sphere, but you will have no visual feedback. As in, you will move a tiny bit your mouse and "nothing will happen".
This can be "dangerous" for very long distance battles, as you can have your mouse pointing at one specific dot of the sphere and your visual makes you think it's a bit on the side, so you will get the feeling you are not "hitting" the opponent.

If you have lower CPI or your sphere provides far less dots (by setting an in-game sensitivity that's very high), you can get into dangerous waters again, as pixel skipping might happen, or stair movement will be apparent.

So, what to strive for?
Just get a compromise on what feels good for you, and where you have a balanced resolution, CPI and in-game settings, where you don't get pixel skipping and you don't need too much movement to move one pixel on-screen, and you can move 1x1 pixels without problem, all the time (consistency is key).

Before someone comes and tries to axe all this because it's wrong :
Yes, I know some parts of this are "wrong" and I'm not explaining in any way "in-depth", it's a way to graphically explain, more a less, what's going on.
post #14 of 26
your mouse wont act dif on dif resolutions but it will require more or less hand movement

lets say you use 1600 cpi on a 1600x900 res in my exp you can move your hand without lifting your wrist to about the edge of the screen.
for me being able to move a LITTLE bit over the edge of the screen is what matters most.

i wish there was a better calc for non CS players
Almost done...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 2500K 4.6ghz P67 Sabertooth Asus 560 ti 4g Dominator Ram w/EKBlock 
Hard DriveOptical DriveOSMonitor
Corsair 120g force 3 ssd - Caviar Black WD 500g Asus Windows 7 21.5 Inch 1920/1080 
PowerCaseMouseMouse Pad
Corsair AX850w M8 Spawn Qck 
  hide details  
Reply
Almost done...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 2500K 4.6ghz P67 Sabertooth Asus 560 ti 4g Dominator Ram w/EKBlock 
Hard DriveOptical DriveOSMonitor
Corsair 120g force 3 ssd - Caviar Black WD 500g Asus Windows 7 21.5 Inch 1920/1080 
PowerCaseMouseMouse Pad
Corsair AX850w M8 Spawn Qck 
  hide details  
Reply
post #15 of 26
Thread Starter 
Thx for all the good answers so far. I haven't really figured it all out yet as this stuff seems to get the more complicated the more I understand about it biggrin.gif (If you know what I mean)

Now I've also read a little bit in the links provided and Glymbol used this forumla:
Code:
                  360 * 2.54                 360 * 2.54
1) speed = --------------------------- = ------------------- = 51,95 cm/360°
            m_yaw * sensitivity * CPI     0.022 * 1.0 * 800

Can anyone explain me what the 2.54 means there? And the m_yaw and m_pitch I suppose are there to have different sense ratios on x and y axis. But why the heck is it 0.022 and not just 1?


Oh I think I figured the 2.54 part out, lol smile.gif The *2.54 is the inch to cm conversion...
Edited by Margou - 4/25/12 at 6:08pm
My System
(15 items)
 
  
CPUMotherboardGraphicsRAM
Q9550 Gigabyte GA-X48-DS4 Gainward GTX460 GS-GLH Corsair TWIN2X4096-8500C5DF 
Hard DriveHard DriveHard DriveOS
Intel SSD X25-M G2 WD Velociraptor WD3000HLFS WD Caviar Blue 5000 AAKS Windows 7 x64 
MonitorPowerCaseMouse
NEC Multisync 24WMGX3 Corsair Hx620w Coolermaster 690 Logitech G500 
  hide details  
Reply
My System
(15 items)
 
  
CPUMotherboardGraphicsRAM
Q9550 Gigabyte GA-X48-DS4 Gainward GTX460 GS-GLH Corsair TWIN2X4096-8500C5DF 
Hard DriveHard DriveHard DriveOS
Intel SSD X25-M G2 WD Velociraptor WD3000HLFS WD Caviar Blue 5000 AAKS Windows 7 x64 
MonitorPowerCaseMouse
NEC Multisync 24WMGX3 Corsair Hx620w Coolermaster 690 Logitech G500 
  hide details  
Reply
post #16 of 26
0.022 is the default value for m_yaw.
post #17 of 26
id like to fill in some of this info but i dont get what "in game sens" is for non CS players.

can someone clarify some of these values? gracias
Almost done...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 2500K 4.6ghz P67 Sabertooth Asus 560 ti 4g Dominator Ram w/EKBlock 
Hard DriveOptical DriveOSMonitor
Corsair 120g force 3 ssd - Caviar Black WD 500g Asus Windows 7 21.5 Inch 1920/1080 
PowerCaseMouseMouse Pad
Corsair AX850w M8 Spawn Qck 
  hide details  
Reply
Almost done...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 2500K 4.6ghz P67 Sabertooth Asus 560 ti 4g Dominator Ram w/EKBlock 
Hard DriveOptical DriveOSMonitor
Corsair 120g force 3 ssd - Caviar Black WD 500g Asus Windows 7 21.5 Inch 1920/1080 
PowerCaseMouseMouse Pad
Corsair AX850w M8 Spawn Qck 
  hide details  
Reply
post #18 of 26
Quote:
Originally Posted by DeMS View Post

When you have "perfect pixel precision", it means that the CPI matrix, the projected sphere matrix and your monitor resolution are "overlapping", as in 1 pixel corresponds to only one CPI count dot, and that corresponds to one possible angle in-engine. (That's a lot harder to achieve than you might think)

It's hard or rather impossible to achieve because pixels "cover" area of different size in degrees. Only some pixels will be "overlapping", all remaining pixels further away from crosshair will be "skipping" because they "cover" smaller angle.
Quote:
Originally Posted by DeMS View Post

If you have higher CPI than that and your game permits it, you can aim on a per sub-pixel basis, which will allow you to position your pointer in-game on a higher resolution than your projected sphere, but you will have no visual feedback. As in, you will move a tiny bit your mouse and "nothing will happen".

Some time ago I made an experiment. I set 640x480 resolution, sensitivity 1.0 (standard m_yaw 0.022), to check if rotation by 1 count is visible in game. 1 count with this settings is 0.022°, and area "covered" by pixel next to crosshair using 640x480 resolution is 0.179°. So in game I'm turning by angle so small that it shouldn't be visible. 0.179 / 0.022 = 8.14 that means I need 8 counts to rotate by "1 pixel". Here are results: screens.zip 1414k .zip file . It took 7 counts to change the center pixel (a very close wall) yet every screen is different. The reason is obvious, the game draws new frame every 10ms (for 100 FPS). As long as I stood still the screen should be the same (if there's no moving objects it will be the same). When I rotated by 0.022° the whole visible scene is redrawn and it looks different even with resolution that low.

I'm writing this because whole pixel skipping idea is good only for 2D games or desktop, where you move pointer by pixels. In 3D FPS game there's no such thing as pixel skipping. You can only assume: "pixel skipping" occurs when smallest possible rotation is larger than area "covered" by pixel next to crosshair.

DeMS, you know all of that so sorry for quoting your post. You explained how all of this works very well. I still delude myself that someone will benefit from better understanding of this wink.gif .
Quote:
Originally Posted by DeMS View Post

So, what to strive for?
Just get a compromise on what feels good for you, and where you have a balanced resolution, CPI and in-game settings, where you don't get pixel skipping and you don't need too much movement to move one pixel on-screen, and you can move 1x1 pixels without problem, all the time (consistency is key).

I agree with your conclusion 100%.


Quote:
Originally Posted by Cek View Post

thats not entirely true: dpi affects pixel skipping.
for example double dpi with half sens does decrease the minimum detectable movement of the mouse, therefore the pixel skipping.

In your example you are changing both DPI and sensitivity.

It's very simple: with sensitivity too high you'll always have "pixel skipping", no matter what DPI mouse you use. By too high I mean: too high for your screen resolution.
Edited by Glymbol - 4/26/12 at 2:17am
post #19 of 26
Quote:
Originally Posted by Glymbol View Post

It's hard or rather impossible to achieve because pixels "cover" area of different size in degrees. Only some pixels will be "overlapping", all remaining pixels further away from crosshair will be "skipping" because they "cover" smaller angle.

The graphical reason for that is that you're trying to project a dot sphere, where every dot has an equal distance to any other, into a planar surface. This inevitable means that the density in the middle of the projected planar surface will be higher than the density on the sides, thus you can't have equally spaced dots once the sphere got projected.

That, in turn, means that by definition small movements will be more precise than fast movements, but since even the desktop cursor input method (WM_MOUSEMOVE) prioritizes small movements, on a good enough FPS rate you won't hit the limits and will remain within a reasonable range. Still, small movements will be more accurate.
Quote:
Originally Posted by Glymbol View Post

Some time ago I made an experiment. I set 640x480 resolution, sensitivity 1.0 (standard m_yaw 0.022), to check if rotation by 1 count is visible in game. 1 count with this settings is 0.022°, and area "covered" by pixel next to crosshair using 640x480 resolution is 0.179°. So in game I'm turning by angle so small that it shouldn't be visible. 0.179 / 0.022 = 8.14 that means I need 8 counts to rotate by "1 pixel". Here are results: screens.zip 1414k .zip file . It took 7 counts to change the center pixel (a very close wall) yet every screen is different. The reason is obvious, the game draws new frame every 10ms (for 100 FPS). As long as I stood still the screen should be the same (if there's no moving objects it will be the same). When I rotated by 0.022° the whole visible scene is redrawn and it looks different even with resolution that low.
I'm writing this because whole pixel skipping idea is good only for 2D games or desktop, where you move pointer by pixels. In 3D FPS game there's no such thing as pixel skipping. You can only assume: "pixel skipping" occurs when smallest possible rotation is larger than area "covered" by pixel next to crosshair.
DeMS, you know all of that so sorry for quoting your post. You explained how all of this works very well. I still delude myself that someone will benefit from better understanding of this wink.gif .
I agree with your conclusion 100%.

I made a similar experiment with CSS and some Q3-based game back when I was checking the capabilities of the Lachesis, to see if 4000CPI was worth anything, and I would have to move the mouse quite a respectable distance to get it to move from one pixel to the next one. It was then when I understood that more CPI != better.

"pixel skipping" on 3D can also mean that your movement lands on a different angle "dot" as the one intended. That usually happens when your in-game sensitivity is way too high or there are some mis-calculations being done.

Thanks smile.gif
Quote:
Originally Posted by Glymbol View Post

In your example you are changing both DPI and sensitivity.
It's very simple: with sensitivity too high you'll always have "pixel skipping", no matter what DPI mouse you use. By too high I mean: too high for your screen resolution.

The highest the in-game sensitivity, the more spaced the sphere dots are between eachother, and thus, the bigger the chance the projection has to go further away to find one of the "angle dots" , thus giving the impression of "pixel skipping".

It's worth it to understand that pixel skipping is the symptom, not the cause of the problem.
post #20 of 26
to be very practically here with his ingame sens of 5.1 at his 1920x1200 resolution in TF2:

When he takes the sniper and zooms in, the crosshair will move very(!) blocky already.
So if he wants to keep the speed of the cursor/crosshair ingame, but wants more prescision for unblocky aiming, he needs more DPI of the mouse, and a lower ingame sens. case closed.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Mice
Overclock.net › Forums › Components › Mice › DPI depending on monitor resolution?