HUD canvas is automatically applying unwanted antialiasing?

I’m working on a pixel-perfect 2D game. In PIE, my pixels are sharp and look good. In builds and when playing in a standalone process, there’s a subtle blurring to the pixels. Here’s a zoom in on an example:

I use a custom “render pipeline” that composites a series of target render textures together to get my final image. I’m able to verify, using the “Export Render Texture” node, that all of these textures are sharp. Just to be clear: this is NOT an issue with texture sampling settings in any assets that I control. I am using “nearest” filtering everywhere. The exported PNGs I get from running in builds or in standalone processes are sharp, with no blurring.

The final image is drawn directly to the HUD with a “Render Material” node that manually, inside of the material, implements a point upscaling filter (thus there should be no possibility of a change in sampler in builds being responsible for this). I have also tried creating a target render texture whose size is equal to the viewport size, rendering the final image to that texture, and then using a “Draw Texture” node to draw that texture to the HUD. Again, this gives me sharp pixels in PIE, but blurred pixels in standalone/builds.

The only explanation I can think of is that the HUD canvas itself is applying some antialiasing to the image. Unfortunately, the Canvas is not accessible to HUD subclasses. I’m not able to see any obvious place in the Canvas or in the code it works with where blurring might be happening, either. I don’t suppose any of you have any idea? Thank you!

Welp, it figures, after spending a day wrestling with this, a friend suggested I try changing the “Allow high DPI in game mode” setting. It was disabled. Enabling it fixed the blurring! Good work, rubber duckies :slight_smile: