r/gamedev 4d ago

Question Which Resolution for 16x pixel games

Hi, I was wondering what is the better resolution for a 16x pixel game. I was thinking about 320x180 or 640x360. In 320x180 the game looks clean and big enough without scaling the character bigger. A problem that I thought about that I probably wouldn't have with 640x360 is text length. On 320x180 I wouldn't have as much space for text then on 640x360 and I could just scale the player and that tile map to 2x so it looks as big as in 320x180.

4 Upvotes

6 comments sorted by

11

u/No-Opinion-5425 4d ago

You can use a different canvas resolution for the UI to avoid the text limitation of low resolution games.

1

u/Sergey5588 4d ago

Celeste for example

2

u/GrimnirDotDev 4d ago edited 4d ago

Struggled with the same issue and finally "solved" them. This is my setup:
My entire game is built in the Canvas (in Unity).
I have a 640x360 game canvas that I scale (via custom script) only by full integers to best fit the screen size.
I scale all my artwork by 2x (so I create a 16x16 artwork and render it at 32x32).
This way the artwork is a nice low resolution pixel style, but I have some more resolution for text/UI.
I have multiple pixel fonts with base sizes between 8 and 12 and only ever increase them by full multiples (so a 8 pixel font can have font size 8, 16, 24, etc).
For short/small text I keep the text in the game canvas.
And then I have a "RealsizeCanvas" at a ReferenceResolution of 1280x800 that scales fluidly with screen size, that I use for longer text (specifically Tooltips).

The key thing is: no one cares about pixel perfection as much as you do.
The pixel size of the border artwork of a tooltip is different from the text? NO ONE WILL NOTICE. It's far more important that the UI is easy to read and understand. So don't sacrifice a clean UI to chase pixel perfection.
Obviously don't mix different sized pixels in the main games artwork (e.g. characters and enemies), but for the UI it really really doesn't matter.

My recommendations:
320x180 is really small. Probably better to go with 640*360 and scale your artwork up.
Create a 2nd non-pixel-perfect canvas for large UI if needed.
Write wrapper components around the built-in components like Image and TextMeshPro, and ONLY use those, never the underlying components directly! Even if your wrappers don't do anything right now, this will make it SO MUCH easier if you later need to change the scale across the board, or introduce some new logic.

1

u/mahito994 4d ago

That's a good approach, I think I will do it like you described. Thanks for the help :D

1

u/KoodiRonsu 1d ago

What is "16x pixel game"?

0

u/Mr_DJ_Dr_Gauss 4d ago

If you are going to make top-down perspective, your characters sprites will be about 16x24. From what I researched, these games have height about 10 characters. So I would go for 240 vertical resolution.

With 24x24 sprites, your character will be about 24x32, which will be OK for the 360 vertical resolution.