4
\$\begingroup\$

I am looking to produce graphics with the same limitations / look that in the Super Nes era. I am specifically looking for graphics similar to Chrono Trigger / FF6.

It would be a lot easier to do if I had an idea of the resolution / dpi I am supposed to use. I found that the technical specs for the SNES are:

Progressive: 256 × 224, 512 × 224, 256 × 239, 512 × 239 Interlaced: 512 × 448, 512 × 478

But even by using these resolutions, it is pointless if I set it at 72dpi, as I will still have possibly very detailed graphics (that is the main thing, I don't want detailed graphics, I want to go pixelated).

I figured it might be related to the sprite size limit, i.e.:

Sprites can be 8 × 8, 16 × 16, 32 × 32, or 64 × 64 pixels, each using one of eight 16-color palettes and tiles from one of two blocks of 256 in VRAM. Up to 32 sprites and 34 8 × 8 sprite tiles may appear on any one line.

This would work for sprites (characters, objects), but what about maps? Are they built entirely from 8x8 tiles? And then, at what resolution is the end result displayed?

It might seem like I am giving the question and answers at the same time, but all of these are suppositions I am making, so could someone confirm or correct them?

\$\endgroup\$

3 Answers 3

8
\$\begingroup\$

You may want to check out this question, which is related although I don't think it's strictly a duplicate since it asks for more general information than you are.

The limitations you are quoting seem reasonable to me.

This would work for sprites (characters, objects), but what about maps? Are they built entirely from 8x8 tiles?

The SNES had multiple background modes, all of which were palettized (I think) and consisted of 32x32 background tiles. This page may be of use to you, as might this one.

The DPI you use for the background tiles should be the same as the DPI you use for the sprites. But the actual DPI shouldn't much matter, don't worry about it -- if you're going to mimic the resolution of the system exactly, you will get detailed-looking sprites at that resolution on a modern monitor. They'll just be extremely small. You'll want to scale everything up anyway if you want to consume a reasonable amount of space on the screen. Probably with nearest-neighbor or simple bi-linear filtering.

\$\endgroup\$
3
  • 6
    \$\begingroup\$ I would like to add this link: en.wikipedia.org/wiki/List_of_video_game_console_palettes which gives a great indication of the color palettes available. (Lots of really clear pictures). \$\endgroup\$
    – Roy T.
    Commented Mar 21, 2012 at 18:00
  • \$\begingroup\$ That's pretty cool! \$\endgroup\$
    – user1430
    Commented Mar 21, 2012 at 18:03
  • \$\begingroup\$ Thanks a lot! It also gave me insight of how to code the background layers priority, which is great :) \$\endgroup\$ Commented Mar 21, 2012 at 23:08
7
\$\begingroup\$

In addition to the resolution and pallet limitations a lot of what made the NES experience different from modern gaming is the old CRT screens NES games were displayed on. So if you really want to capture that retro feel, I suggest using a shader that mimics the inaccuracies of these old displays.

http://filthypants.blogspot.com/2011/05/more-emulator-pixel-shaders-crt-updated.html

\$\endgroup\$
1
  • \$\begingroup\$ The effect I am going for is more about the game design/feel, maybe not up to the screen aspect :) Like what you get using an emulator for example. But thanks for the idea, it might actually get useful \$\endgroup\$ Commented Mar 21, 2012 at 23:06
-1
\$\begingroup\$

Just start with 32 x 32 sprites, and don't worry too much about the pallette, unless you want something truely authentic. The use of colour on the SNES was so clever, you can just use whatever pallette you like within reason, and it'll still look the part. Reducing colours at the end is easier than restricting yourself upfront.

You can make the sprites bigger or smaller than 32 x 32, but if you start there, by the time you scale up to 2x ,3x or 4x (using nearest neighbour), it'll look like SNES graphics.

This is the easiest way to get going.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .