Most common supported graphics modes

Started by
8 comments, last by GilliganCoder 14 years, 4 months ago
What are the most common graphics modes supported by PCs running Windows? I am looking for a small mode like 320x240x16 but I want to see what should hypothetically run on 99% of all Windows machines w/ DirectX. Please include bit depth in your responses, as my app requires 16-bit. I could go to 640x480x16 but I want something smaller. Thanks!
Advertisement
320x240 is probably too small. 640x480 is probably the smallest you could go. Most GPU's will support either a 32-bit (X8R8G8B8) or 16-bit (R5B6G5) display mode for any fullscreen resolution.

If you really want 320x240 you can always just render to a render target of any size you want, and then just scale it to the display resolution.
You should be enumerating the modes that the adapter supports. Just blindly choosing one will likely fail at some point.

As an example, my desktop card barely supports 640x480, and doesn't support 320x200 at all, preferring significantly higher resolutions.

In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.

You can't go wrong with 800x600. It's the lowest supported resolution in Windows Vista and Windows 7. You can go lower into 320x200/240 and 640x480 but Windows, graphics drivers, and even some monitors don't like it. I know my monitor throws a fit if I try to use 640x480 in fullscreen mode. I'm not able to change the aspect ratio and the refresh rate is locked.

If you used 800x600, it should work on any Windows installation.
Quote:Original post by Flimflam
You can't go wrong with 800x600. It's the lowest supported resolution in Windows Vista and Windows 7. You can go lower into 320x200/240 and 640x480 but Windows, graphics drivers, and even some monitors don't like it. I know my monitor throws a fit if I try to use 640x480 in fullscreen mode. I'm not able to change the aspect ratio and the refresh rate is locked.

If you used 800x600, it should work on any Windows installation.


Aye, in fact the only way I can get my windows 7 to go to 640x480 is by removing the video driver and using the generic VGA driver.

In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.

I'd suggest drawing into a render target that would be best for you, then scaling it to a much larger size for the full display (and possibly 32 bit).

If you want further help, I think it would be good if you explain why you need this particular small size, and how you're planning to use DirectX.
Quote:Original post by GilliganCoderWhat are the most common graphics modes supported by PCs running Windows?


I don't think most desktops/laptops even go below 800*600 anymore:

http://store.steampowered.com/hwsurvey/

^ Check primary display resolution results on that survey. 1024*768 is the lowest that even shows up in the results.

Quote:Original post by MJPIf you really want 320x240 you can always just render to a render target of any size you want, and then just scale it to the display resolution.


What I'm trying to do is to write a 2D platform game with a resolution of 320x240. I'm using DirectDraw 6. As of right now, here's my basic process:

Create DDraw Object
SetCooperative Level (w/ Display Mode if fullscreen)
Create Primary Surface

Get Attached Surface (back buffer) -- if fullscreen OR
Create Back Surface (back buffer) -- if windowed

If it's fullscreen, I'm not setting width/height for the back buffer. If it's windowed, I'm setting it w/ dwWidth & dwHeight. So here's a few questions then:

If I want the back buffer to always be 320x240x16, can I set it up so it's always that? Or do I need to set up the back buffer with the display mode's size and make another back buffer of size 320x240 that will Blt() to the larger one?

Is there a better way to do all this? I like the idea of enumerating available display modes and I'm willing to put the work into it, I just want to be able to draw the game to a 320x240x16 buffer.

This raises one final question (for now). How do I handle it if I'm using 16-bit but my user wants to use a 32-bit mode?

Thanks for any and all help.

Quote:Original post by EJH
Quote:Original post by GilliganCoderWhat are the most common graphics modes supported by PCs running Windows?
I don't think most desktops/laptops even go below 800*600 anymore...
Except for netbooks, which often don't go up to 800x600. All the early 7-8" eee pc and related netbooks max out at 800x500.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

A slight correction... I'm using DirectX 7.

This topic is closed to new replies.

Advertisement