Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Thanks for playing!

I do actually test on a real GBC, along with an analogue pocket (and yes, a GBA), using an everdrive.

Unfortunately there is no “real”, fixed palette I can go for - especially in the current era where everyone is using aftermarket screens.

I recently taught myself GLSL and started implementing shaders in the online emulators, as well as trying other, non-shader approaches.

I have an (in-progress) emulator at http://www.jmkdev.net/assets/gbtest/ that attempts to simulate a GBC screen more faithfully; you may have to enable controls and set the system to GBC instead of DMG. I’d love your take on how well that matches your GBC experience.

I also have another emulator in progress that has a slightly more complete version of the effect: https://i.imgur.com/4o7ppYv.png

But that one isn’t publicly available yet.

You could have an options menu where the user could choose between palette, say: gbc, gba, srgb. Then in development, have an algorithm that converts colours between colourspaces, either at runtime or beforehand (not sure how expensive it would be). Anyway it is up to you :)

I tried on gba and it is quite a bit darker as is to be expected.

Regarding your emulator, the second one looks better without the overlay shadow, as it is nice to have a consistent screen. At least in image editors, I had the best effect by making sure the screen is integer scaled and each subpixel in the mask 100% opacity multiplied to properly transform an lcd screen into it. Use a mask taken from the console, for example gbcc.dev/technology/subpixels.jpg and then make for layers, one filled with the black background, the others one for each subpixel of each uniform colour. For the subpixel colours use colours measured from setting your gbc / gba to fully red, green or blue. Then multiply the red channel of your subpixel over the red component of the rendered image and do the same for the other colours. In the end it looks quite convincing if done at 100% opacity. However I think it might look slightly wrong because it doesn't account for how the finished effect changes in brightness / intensity with increase / decreases in values. So maybe that can be measured and accounted for. To be honest I need to learn about that myself.

A cool thing that gbcc emulator does is emulate the weird interlacing effect that the gbc and gba both have. I say weird because somehow on real hardware, when you scroll horizontally you still get the effect and I would have thought it only applies to vertical scrolling. Probably it is me misunderstanding how it works and it not strictly being the same kind of interlacing that I expect.