hrydgard / ppsspp

A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
https://www.ppsspp.org
Other
11.03k stars 2.15k forks source link

Broken lighting in some games (bloom effects at higher resolutions) #19370

Open EvilPlayer1 opened 1 month ago

EvilPlayer1 commented 1 month ago

Game or games this happens in

UCUS98633 - Ratchet & Clank: Size Matters, UCUS98697 - Secret Agent Clank, UCUS98634 - Jak and Daxter: The Lost Frontier

What area of the game

In all games the issue can be seen from the beginning.

What happens

All sources of lighting aren't rendered correctly. They have buggy, pixelated and very bright extra lighting. Screenshot 26-07-2024 18-00-58 Screenshot 26-07-2024 18-05-04 Screenshot 26-07-2024 18-06-39

What should happen

In the original this should look like this: Screenshot 26-07-2024 18-01-42 Screenshot 26-07-2024 18-04-53 Screenshot 26-07-2024 18-06-55 And there's one interesting moment. This bug could be fixed earlier, in v1.7.4 and lower to be exact, by enabling "disable slower effects". The games worked perfecly, but in 1.8.0 and newer it doesn't work anymore and nothing can influence this bug. Now it can be fixed only by enabling "skip buffer effects", but the games will expectedly show a black screen in dynamic scenes.

GE frame capture

No response

Platform

Windows

Mobile device model or graphics card (GPU)

GTX 1660 SUPER

PPSSPP version affected

v1.17.1

Last working version

v1.7.4

Graphics backend (3D API)

Vulkan

Checklist

hrydgard commented 1 month ago

This is just the age-old #6192 . We emulate the effect correctly, the problem is that the effect is designed for a specific resolution, the PSP's 480x272. When these bloom effects are applied on higher-resolution framebuffers, it doesn't go too well.

Best workaround is to play at 1x rendering resolution, but unfortunately the PSP's original resolution doesn't look great on modern displays.

We already have the "Lower resolution for effects" hack which partially resolves it in some games, but sometimes there's not really anything that can be reasonably done, without diving into per-game hacks. The latter I plan to make easier in the future through a couple of initiatives, but it's a ways off.

I don't count the old "Disable slow effects" because that will just remove the bloom entirely and is just as gross a hack as "skip buffer effects". There are no plans to reintroduce that.

EvilPlayer1 commented 1 month ago

Looks like Secret Agent Clank really needs to remove bloom, because PSP and 1x resolution on emulator look different. Didn't test other games. IMG_0533 Screenshot 26-07-2024 20-16-09

LunaMoo commented 1 month ago

Bloom actually looks fine at x1. The rest feels different, it's also not really in same spot, the PSP one is standing much closer to the light source, also it's a picture of low quality screen vs screenshot, you'd want to take screenshot on psp (via plugin) to compare anything really.