How big should my "pixels" be

Started by
6 comments, last by MatthewDiaz 12 years, 7 months ago
So I have decided to go the old school route for my game and have my graphics in sort of a NES or SNES style or somewhere in between. I am currently using mtPaint to do my artwork and I am wondering in a 1280X1024 screen, how big should my "pixels" be. For example if I want to do NES 8bit graphics in a 1280x1024 screen should my "pixels" be 3x3 pixels, or 4x4 pixels? How bout for 16bit?
Advertisement
The original NES had a resolution of 256 x 240 and the SNES resolution ranged from 256 x 224 to 512 x 478. So you'd want your pixel blocks to be around 4x4 for NES and 2x2 for max resolution SNES.

The original NES had a resolution of 256 x 240 and the SNES resolution ranged from 256 x 224 to 512 x 478. So you'd want your pixel blocks to be around 4x4 for NES and 2x2 for max resolution SNES.


Thank you.
Just a note that you shouldn't force any resolution to the user, or else your game won't be playable anywhere except your monitor. Especially 1280X1024, which have a 5:4 aspect ratio, it's far from being popular. You should let them put any resolution, choose a wanted game aspect ratio, put black bars around if it don't fit and scale the numbers of pixel per "game pixel" accordingly depending on the resolution.

Just a note that you shouldn't force any resolution to the user, or else your game won't be playable anywhere except your monitor.


Could you explain that more? Taking that as written you are saying that no one else can play my game. Also i read based on polls 1280x1024 is more popular than 800x600 since it is a more common native resolution nowadays than 800x600. Also, if there is a forced resolution would it not matter at all to the user if they play in a window which is my game's default display? Game would appear the same on any computer would it not? You can maximize the window also, but it stretches the display.
Now, keep in mind that you don't actually need to draw your source-art using these 3x3 or whatever pixels. Just draw them regular size in the art program and scale them up 3x as big in the game -- this will save you a significant amount of memory, and a significant amount of headache in making sure you always follow whatever grid you set out for yourself.

Plus, for users that want something a little smoother on they eyes, you can then easily apply algorithms like Scale2x/Scale3x to smooth things out while retaining a fairly retro look. Many emulators include these algorithms as a feature to make old games look better on high-resolution/large displays without ruining the retro appearance of the art like traditional bi-linear up-scaling would.

If you're tied to a platform where scaling the draw calls is not possible, then draw at regular resolution and pre-process the images to pre-scale them. Do one set with point-sampled upscaling (to turn 1x1 pixel into NxN pixels) and other with the ScaleNx algorithms. Then let users select which package of sprites they prefer and load that set for the game.

throw table_exception("(? ???)? ? ???");


[quote name='Dunge' timestamp='1316717870' post='4864797']
Just a note that you shouldn't force any resolution to the user, or else your game won't be playable anywhere except your monitor.


Could you explain that more? Taking that as written you are saying that no one else can play my game. Also i read based on polls 1280x1024 is more popular than 800x600 since it is a more common native resolution nowadays than 800x600. Also, if there is a forced resolution would it not matter at all to the user if they play in a window which is my game's default display? Game would appear the same on any computer would it not? You can maximize the window also, but it stretches the display.
[/quote]

Its not the end of the world to choose a fixed resolution if your game is windowed, or can be letter-boxed/pillar-boxed when full screen, Particularly for retro-looking, 2D, Sprite-based games. The only real option for supporting multiple resolutions/aspect ratios in a 2D game and have it look decently retro is to to over-size the source art at full detail (eg, draw stuff twice as big as it needs to be, use all the pixels, and draw all the pixels) to a hidden surface at screen resolution, then do a post-process effect to average the color of an NxN block of pixels into a single "virtual" pixel (set each physical pixel in the block to the color average of all the pixels within it).

Also, for what its worth, 1366x768 is the most common resolution by a huge margin if you're looking at all Windows PCs -- predominantly due to its use in laptop panels, and the recent popularity of laptops, which have outpaced the sale of desktops in the last few years. Around 45% of all computers running windows run at this resolution, and greater than 50% if you lump in similar (less-common) resolutions like 1280x800, 1280x768, 1360x768. Steam's survey probably shows different numbers, but its results are skewed towards hard-core gamers.

If your game will appeal to hardcore, go with what Steam says -- but if its a casual title, go with what I've said above. If your game is a wide-screen aspect ratio (16x9) design for 1366x768 -- if its a classic aspect ratio (4x3) then design around 1024x768. This will ensure that the broadest range of people will be able to run your game full-screen without scaling artifacts. As a side benefit, they scale to nice, retro, power-of-two resolutions like 256x192/512x384.


Also keep in mind that if you were to support multiple aspect ratios in the same game without letterboxing/pillarboxing/stretching, then you have to be aware of how this affects the design of your game. For example, in a top-down game, a widescreen user might see more of the surrounding map laterally, while a 4x3 user might see more of it on the perpendicular axis. One user might be able to more easily see a hidden area, for instance, if you don't design around the greatest-common-denominator of viewing margins.

throw table_exception("(? ???)? ? ???");


[quote name='ILoveJesus' timestamp='1316718395' post='4864800']
[quote name='Dunge' timestamp='1316717870' post='4864797']
Just a note that you shouldn't force any resolution to the user, or else your game won't be playable anywhere except your monitor.


Could you explain that more? Taking that as written you are saying that no one else can play my game. Also i read based on polls 1280x1024 is more popular than 800x600 since it is a more common native resolution nowadays than 800x600. Also, if there is a forced resolution would it not matter at all to the user if they play in a window which is my game's default display? Game would appear the same on any computer would it not? You can maximize the window also, but it stretches the display.
[/quote]

Its not the end of the world to choose a fixed resolution if your game is windowed, or can be letter-boxed/pillar-boxed when full screen, Particularly for retro-looking, 2D, Sprite-based games. The only real option for supporting multiple resolutions/aspect ratios in a 2D game and have it look decently retro is to to over-size the source art at full detail (eg, draw stuff twice as big as it needs to be, use all the pixels, and draw all the pixels) to a hidden surface at screen resolution, then do a post-process effect to average the color of an NxN block of pixels into a single "virtual" pixel (set each physical pixel in the block to the color average of all the pixels within it).

Also, for what its worth, 1366x768 is the most common resolution by a huge margin if you're looking at all Windows PCs -- predominantly due to its use in laptop panels, and the recent popularity of laptops, which have outpaced the sale of desktops in the last few years. Around 45% of all computers running windows run at this resolution, and greater than 50% if you lump in similar (less-common) resolutions like 1280x800, 1280x768, 1360x768. Steam's survey probably shows different numbers, but its results are skewed towards hard-core gamers.

If your game will appeal to hardcore, go with what Steam says -- but if its a casual title, go with what I've said above. If your game is a wide-screen aspect ratio (16x9) design for 1366x768 -- if its a classic aspect ratio (4x3) then design around 1024x768. This will ensure that the broadest range of people will be able to run your game full-screen without scaling artifacts. As a side benefit, they scale to nice, retro, power-of-two resolutions like 256x192/512x384.


Also keep in mind that if you were to support multiple aspect ratios in the same game without letterboxing/pillarboxing/stretching, then you have to be aware of how this affects the design of your game. For example, in a top-down game, a widescreen user might see more of the surrounding map laterally, while a 4x3 user might see more of it on the perpendicular axis. One user might be able to more easily see a hidden area, for instance, if you don't design around the greatest-common-denominator of viewing margins.
[/quote]

Thank you. Those are the answers I was looking for. I'll change my design to 1024x768 then.
Another question. I am using Angelcode's BMFont generator for my game font's. Do you know if it supports fonts with a blocky/retro style and what the name of those fonts may be? Also for anyone coding a font system in Directx 11 from scratch, I highly recommend using this program.

This topic is closed to new replies.

Advertisement