Question PPU Camera Scale and Pixel Perfect

I read through so much and tried out different things to see results and i’m still confused by that.

Basically if you want pixel perfect for all resolutions you take PPU = 16 and Camera Scale = 11,25. HOWEVER doing so limits your screen to be an actual size of only 640 x 360 because everything beyond isn’t shown on screen (without moving camera, we have a single screen in my case, no moving camera, Point & Click or Puzzle whatever).

If you want more freedom in how much pixels to display on screen instead only 640 x 360 you basically cannot achieve pixel perfect for all resolutions anymore. And changing PPU and camera Scale for each Resolution isn’t an option either bc no setting allows the same size which means you would also have to realign and change UI to the fitting resolution.

Is that correct from what i read and tried now or is this false Information.
If false can you please provide me more Information that keeps pixel perfect for all resolution with the same height and width.

  1. Truth is that Pixel Perfect is a word used for many different meanings.

  2. From what I read in your post, you’re probably referring to the fact that 640x360 scales in multiples of 2 to 720p, 1080p and 4k. Which are the most common resolutions around these days… But then the Steam-Deck runs at 1280 x 800, Laptops, Mobiles and Tablets have all kinds of crazy resolutions, aspect ratios…

  3. So there is not really a “one size fits all solution”. What you’ll probably will want is to either Render Your Game at a "Native Resolution" or “Snap Sprites to a Grid”

  4. Despite what many believe you can use a plethora of Shaders to Upscale Pixel Art to whatever resolution you may need. While still keeping everything:
    a) Looking Blocky/Pixelated (but potentially not being perfect squares)
    or
    b) Being Perfect Squares (if you cleverly give your game some “bleeding area” that can be cut off depending on the resolution)

Take a look at these beautiful brothers:

At first glance, you may think they are pixel perfect. But look at the God Forsaken scaling numbers. But since they are all using the same weird number, it all looks correct.

So in theory, all you need to do is either render your game at it’s native resolution (workflow usually means snapping the camera and all objects to a grid, using a Render Texture of the native resolution size) then upscaling it using a shader (Shadertoy has some, t3sselat8r from youtube has another)

Or simply Render The Game at it’s final resolution, but snap things to a grid so it feels “pixelated” with the movement not being ultra smooth. Since you’re not looking to get camera movements, this probably won’t give you any headache and may be the best solution