flyinghead / flycast

Flycast is a multiplatform Sega Dreamcast, Naomi, Naomi 2 and Atomiswave emulator
GNU General Public License v2.0
1.28k stars 161 forks source link

Nearest neighbour screen upscaling? #1415

Open Kurriochi opened 4 months ago

Kurriochi commented 4 months ago

If I'm trying to run a Dreamcast game at 640x480 on a larger screen, I'd like to be able to use nearest neighbour upscaling for my screen so I can have a sharper image. If someone has a 1440p or monitor, a 640x480 integer upscales to 1440p.

smbhax commented 3 months ago

Have you set "Texture Filtering" on Flycast's "Video" tab to "Force Nearest-Neighbor"? It should come out perfectly sharp. And if you're running at a screen resolution above 640x480, many games will also benefit from combining Force Nearest-Neighbor with raising the "Internal Resolution" setting.

SpelzR2 commented 5 days ago

Texture filtering hasn't anything to do with screen scaling. I second that request by Kurriochi. Emulators like Duckstation or PCSX2 offer different scaling methods (nearest, bilinear, sharp bilinear). Besides nearest upscaling I think there should be an sharp-bilinear scaling option too (to reduce uneven pixels without integer scaling). Here are some examples, taken in native resolution:

Flycast 2.3 (standard): linear

nearest scaling: nearest

sharp bilinear scaling: sharp bilinear