libretro / gambatte-libretro

Hard fork of Gambatte to the libretro API.
http://sourceforge.net/projects/gambatte/
GNU General Public License v2.0
104 stars 78 forks source link

Fix 'GB - Pocket' internal palette #156

Closed jdgleaver closed 4 years ago

jdgleaver commented 4 years ago

PRs #152 and #153 recently made extensive changes to the internal GB palettes used to mimic original Game Boy hardware. While I have no objection to the updated GB - DMG and GB - Light palettes, the new GB - Pocket colours are not good...

For reference, here is the existing GB - Pocket palette compared with the 'original hardware' image from which it is purportedly derived:

Hardware Existing 'GB - Pocket` Palette
gb_pocket_hardware Donkey Kong (World) (Rev A) (SGB Enhanced)-200817-132550

The background and darkest values are of the wrong hue, and the artificially reduced contrast make the palette uncomfortable for real-world gaming (particularly for anyone with vision issues...)

This PR takes the same 'original hardware' reference image, and determines the colours correctly, taking into account screen glare, uneven lighting and the colour mangling effects of the underlying LCD substrate. Brightness levels have then been adjusted to match those of a uniformly well-lit screen (at least, to match what my real GB Pocket looks like under fluorescent lighting - with good lighting, the darker shades in real life appear somewhat 'richer' than in the reference image...) The 'corrected' palette looks like this:

Hardware Corrected 'GB - Pocket` Palette
gb_pocket_hardware Donkey Kong (World) (Rev A) (SGB Enhanced)-200818-122055
ghost commented 4 years ago

@jdgleaver

Nice work on fixing this palette, when I first made my derivation I wasn't sure it was good enough for everybody else.

Glad to hear you like my GB and GBL palettes? It is so damn hard and time consuming but I believe we pretty much nailed it. It can never be 100% accurate but it can be damn close.

jdgleaver commented 4 years ago

@RokkumanX Thanks, I'm glad you're happy with the updated palette :)

Yes, I think your DMG and Light palettes look great. It was only the Pocket one that I thought needed tweaking. I spent literally thousands of hours hunkered over a real GB Pocket when I was younger, and those greyscale shades are permanently burned into my head! You're absolutely right about the difficulty of selecting accurate colours - when I got my GB Pocket out of storage while making this PR, I couldn't manage to take a photograph of the screen that looked even half-ways the same as what my eyes saw (what with screen glare and lighting effects and so on). So there was a great deal of squinting involved, and holding the console against the monitor while slowly incrementing RGB values and comparing things with that reference image...

And yep, I think this is a done deal now. Gambatte has the best possible hardware palettes - not 100%, but the closest that mortal man can achieve ;)