Resolution Independence and incorrect usage of dpi and stuff

The place to bring up any design issues, or post your own creations

Moderator: Moderator Team

Nintendo Maniac 64
Posts: 234
Joined: Sun Sep 17, 2006 3:08 am
Location: Northeast Ohio, USA

Resolution Independence and incorrect usage of dpi and stuff

Post by Nintendo Maniac 64 »

This is something that has been bugging me recently, and it's bugging me a LOT. Resolution independence NEEDS to be addressed in some way. There should be absolutely NO reason to be using a resolution setting that is NOT your screen's native resolution (when referring to LCDs), but yet I see it all the time.

One problem is that currently in windows (and ReactOS, but it's in alpha) changing the resolution setting makes your view larger or smaller. But isn't resolution technically defined as detail, not size? When changing the resolution, it should be like how video game consoles or modern PC games do it, which is by changing detail level, not SIZE! And since it wouldn't change size, resolution should kept the same at all times (except in PC games for performance, but they have an option in the game to change it).

This leads me to another point. In windows, to change detail level, you need to change the DPI setting, but it does so by keeping the same resolution so it looks like it enlarges things.

DPI itself, like resolution, should also be fixed. Any screen has a specific physical DPI and resolution. DPI should be used for measurements like word processors or image editors so that at 100% 1 inch is actually 1 inch! This could be found out by instead of specifying DPI, but by specifying screen size in inches (yet again for LCDs) and using the resolution to determine what the DPI is. DPI should NOT be something the user can change since it's based directly off of 2 other settings.


What SHOULD be changable, is a just a general zoom and/or size function. Unfortunately, resolution in OSes has become this, which it shouldn't have (it only worked when DPI was the same for everyone, but newer tech is always coming out now). Instead, where the DPI function is currently, should be 2 settings for resolution and screen size. Where the resolution setting currently is should be a general size function that basically does what resolution does now on OSes, but with keeping the actual resolution the same.


Now obviously this isn't something that can be added easily - especially when Windows itself doesn't do this (incorrectly nonetheless). It could easily break compatibility with windows stuff, which is the main reason for ReactOS in the first place. Though from reading up on Windows 7 at the "Engineering Windows 7" blog (http://blogs.msdn.com/e7/default.aspx) it looks like MS will address the issue. This means that by the time we have late enough versions of ROS that we could worry about design like this, Windows 7 will probably already be out and will have addressed the issue, which means we're not the ones that'd have to deal with compatibility. :P

(ok, this was partially a rant based off some of the comments on the blog I linked to. Apparently some people don't understand WHY you'd want a higher-res screen without making it physically larger - IT'S ABOUT DETAIL PEOPLE, NOT SIZE!!)

Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Z98 »

As far as I'm aware of, resolution means the # of pixels that are used to create your image. This means if you up the resolution, you up the # of pixels. Now if your original item was only, say, 30x30, then it occupies less "space" in the higher resolution, since the proportion of pixels it takes up is less. Hopefully I didn't just say something that would make my graphics professor cry. And I should point out that many video games do change the size of your "view" when you go to higher resolutions. FPSes might not (but I personally don't know since I don't play them), but realtime strategies certainly do.

Nintendo Maniac 64
Posts: 234
Joined: Sun Sep 17, 2006 3:08 am
Location: Northeast Ohio, USA

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Nintendo Maniac 64 »

What you said is correct. However, the problem is that your example should only refer to raster images, not GUI elements. Problem is, only more recently have GUIs started being made with non-raster images or multiple-sized raster images. Like I said, game consoles are a good example of resolution determining detail, not size. (any emulator on PC would work too)

Yes, I realize that if you're running a game or emulator in windowed and not full-screen, changing the res is going to change it's size - that's partly because our current GUIs are designed that resolution = size, and full-screen completely ignores the GUI making resolution independence work.

Also, when I was talking about the definition of resolution, I'm referring more to the existing scientific definition which existed before pixels even were heard of. (more in line with DPI, not "inches per dot" :P)

Basically, except for things like single-image rasters (which are based designed for and with a fixed number of pixels in mind), resolution should NOT be the determining factor of the size something is on your screen.

I'm not just saying "USE VECTORS!" (that'd rock), I'm trying to basically point out that the designers didn't even get close to future-proofing this stuff; they used and termed the settings assuming the DPI across monitors were basically going to stay the same -_- (which apparently they were for a while when this was designed back in Win95)

thePyro_13
Posts: 2
Joined: Sat Mar 29, 2008 5:38 am

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by thePyro_13 »

It does the same thing in games.

load up a 2d game(since OS's use 2d graphics), take Red alert 2 for example.

play a game on the default resolution and then turn the in-game resolution up. everything gets smaller.

Z98 has it right. besides as far as your desktop goes resolution has no effect of performance(or no noticeable effect) all users use it for is making things bigger or smaller.

this has been mostly addressed in vista. you can change the size of icons to any size you want. although the taskbar is still going to get smaller with higher res.
I even made my Firefox shortcut take up the whole desktop :D.

Nintendo Maniac 64
Posts: 234
Joined: Sun Sep 17, 2006 3:08 am
Location: Northeast Ohio, USA

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Nintendo Maniac 64 »

huh, really? The only game I have on my PC that actually changes size when the resolution changes is Quake II running on it's original engine or R1Q2 and Grid Wars.. Excluding FPSes, realMyst, StepMania, TrackMania Forever, Audiosurf, and Frets on Fire all don't change size when resolution is changed... and if you care PrBoom doesn't either :P I realize those are not 2D only games, but they're the only examples I have really that aren't FPS and allow you to change the resolution.

dreams
Posts: 207
Joined: Tue Sep 26, 2006 10:23 am
Location: Holland
Contact:

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by dreams »

http://www.istartedsomething.com/200612 ... i-scaling/

Here is a link with some screenshots on how Vista does it (wrong).

andrewweb
Posts: 263
Joined: Fri Jun 01, 2007 3:59 pm
Location: United Kingdom
Contact:

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by andrewweb »

Nintendo Maniac 64 wrote:huh, really? The only game I have on my PC that actually changes size when the resolution changes is Quake II running on it's original engine or R1Q2 and Grid Wars.. Excluding FPSes, realMyst, StepMania, TrackMania Forever, Audiosurf, and Frets on Fire all don't change size when resolution is changed... and if you care PrBoom doesn't either :P I realize those are not 2D only games, but they're the only examples I have really that aren't FPS and allow you to change the resolution.
no... they use fixed size but scale up to fit screen res. screen resolution on 3d games shows more detail... things get smaller overall, but as the camera is zoomed in more it seems to be the same size... but more view is possible if you zoom out.

Nintendo Maniac 64
Posts: 234
Joined: Sun Sep 17, 2006 3:08 am
Location: Northeast Ohio, USA

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Nintendo Maniac 64 »

um... I'm not really sure what you're referring to. Maybe it's all the "..."s? Anyway, if you could clarify, that would be great :)

andrewweb
Posts: 263
Joined: Fri Jun 01, 2007 3:59 pm
Location: United Kingdom
Contact:

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by andrewweb »

Nintendo Maniac 64 wrote:um... I'm not really sure what you're referring to. Maybe it's all the "..."s? Anyway, if you could clarify, that would be great :)
Im talking about screen resolution settings in 3d games. In 3D games more detail can be seen when you up the screen resolution, but things do not get smaller, as they are scaled to fit the screen. This is because 3D game graphics are vector: they can be scaled to any size and not get pixelated. 2D games usually use a fixed screen resolution, or appear small at large resolution (no scaling), or pixelated (scaled).

Nintendo Maniac 64
Posts: 234
Joined: Sun Sep 17, 2006 3:08 am
Location: Northeast Ohio, USA

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Nintendo Maniac 64 »

oh that? I realize that they DO change in size in relation to your resolution, but in relation to something like inches or centimeters, they don't and instead just get more detailed.

User avatar
Black_Fox
Posts: 1584
Joined: Fri Feb 15, 2008 9:44 pm
Location: Czechia

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Black_Fox »

andrewweb wrote:This is because 3D game graphics are vector
That's not true. Ever came close to a wall in Doom?

Nintendo Maniac 64
Posts: 234
Joined: Sun Sep 17, 2006 3:08 am
Location: Northeast Ohio, USA

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Nintendo Maniac 64 »

um... for one, doom isn't actually true 3D - notice that there's never any bridges in the game?

And what you're talking about it the TEXTURE on a wall - which currently are usually hi-res 2D raster images plastered on a 3D model, not actually vectors (we don't have that many spare GPU and CPU cycles yet - we still have yet to reach photo-realism :P)

User avatar
Black_Fox
Posts: 1584
Joined: Fri Feb 15, 2008 9:44 pm
Location: Czechia

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by Black_Fox »

Yup, I could say also Duke Nukem 3D or Call of Duty: Modern Warfare, but "3D-ness" is not the point. I'm aware of <=96 kB demos, where a lot of (not only) graphics is generated mathematically, though, but it's not common. So it seems we're both right... game gfx can be vector, but nowadays aren't. :)

You got me there with the bridges :mrgreen: I think that there may have been few somewhere, but can't recall

GoBusto
Posts: 579
Joined: Fri Jan 25, 2008 11:13 am
Location: UK
Contact:

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by GoBusto »

Black_Fox wrote:You got me there with the bridges :mrgreen: I think that there may have been few somewhere, but can't recall
This is off topic, I know, but:

Doom levels were completely 2D. They consisted of a group of "sectors", each of which had a "height" value added in so that they would be treated as being at different elevations (in terms of physics and rendering). Look at the automap for any Doom level, and notice how neatly all the rooms fit together without overlapping.

Duke3D is also 2D, but uses "portals" to warp an entity (such as the player) to another part of the map when they - for example - go underwater. In reality, the "underwater" section is not physically located below the water surface at all, it's just another 2D room that the player is moved to.

Meanwhile, back at the topic: HUD displays in games such as Quake 1 get smaller as the resolution gets higher, as they are always rendered as being, for example, 640 pixels across. At 640x480, this means that they take up the whole screen width but at 1280x1024 they only occupy half of it.

Doom 3 gets around this by scaling the perspective matrix used by OpenGL so that all resolutions will map any coordinates to a 640x480 grid:

Code: Select all

  /* Transform projection matrix for 2D rendering. */

  glMatrixMode( GL_PROJECTION );
  glLoadIdentity();
  gluOrtho2D( 0, 640, 0, 480 );
  glMatrixMode( GL_MODELVIEW );
  glLoadIdentity();

  glDisable( GL_DEPTH_TEST );

gyROS
Posts: 197
Joined: Sun Nov 09, 2008 8:10 pm
Location: Deutschland

Re: Resolution Independence and incorrect usage of dpi and stuff

Post by gyROS »

I think the point is, that in 3d games detail does not matter. There are no A4-letters of small printed text in a doom or quake level.
For a simple reason:
In 3d-games texture transformation has to be done anyway, so it does not matter, whether you reduce or increase the zoom factor. It always gives the same blurry result.

In an operating system sharpness does matter. Imagine a grid of parallel lines: either they are blurred so much that you do not recognize them as lines anymore (but that might be essential), or you get those nasty interference patterns. If you have a raster screen, it's simply not very useful, if you transform from vector graphics all the time.
Remember that most people do not change their screen resolution or DPI number every 30 seconds, but most people would get annoyed by the performance lacks introduced by those transformations. It's simply better to do that once and then keep it.
Furthermore especially for ReactOS it would mean a great loss of windows compatiblity. I do not think that it would be easy to automatically convert raster icons of usual windows applications to vector graphics or some other easy scalable format.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest