Handheld Border Shaders


#1

This is a portable pack of various handheld shaders.
I made borders for existing ones and tweaked stuff around.

Main differences with what you can find in the shader repository (because of file size constraint there):

  • Game Gear and NGPC borders are less compressed
  • Gameboy and Gameboy pocket have a dithering applied to limit the bending of the glass light effect
  • turned the GBC black instead of purple
  • Slang shaders are different
  • some tweaking in the parameters
  • new stuff not added there

Integer scaling should be OFF and display ratio in 16:9 (if your monitor is) to show the full border image. The scaling of the game picture is done by the shader itself at integer scale.

Content:

New borders with some lighting effects: DS - GB - GBP - GBC - GBA - GG - NGP - WSwan
(Previously made borders in the “Extra” section bellow.)

GBA-x tries to replicate how Gameboy Advance colors looks like.
It uses VBA color profile (slightly more “ideals” than similar to the original GBA screen). Use the darken_screen/gamma parameters for games that are too bright/dark.

DS-no-border tries to be similar to the original Nintendo DS.

DS-64-x with unrealistic border for DeSmuME core options -> screen gap = 64. (gives the ideal gap between screens)

DS-90-x with Dsi ratio border for DeSmuME core options -> screen gap = 90.

GB-x is a gameboy shader

GB-pocket-x for the gameboy pocket.

GB-pocket-high-contrast-x gets away from the original machine to give more contrast in black & white.

GB-color-x for the gameboy color. Gambatte has an option to simulate the original screen colors.

Game-Gear-x is a Game Gear shader.
It’s possible you’ll see some scaling problems at various sizes because of the non-square pixels the machine uses. Some games like Mickey Castle of Illusion or Prince of Persia were ported directly from the Master System and used an adapter to scale their resolution down to the Game Gear screen.
Most (all?) emulators can’t do the same. You can try to lower the SCALE option to 0.66 to make up for it, even if far from perfect.

NGPC-x for the Neo-Geo Pocket Color.

WSwan-x for the Bandai WonderSwan Color.

credits:

dmg-shader (Game Boy) made by hi-ban from Harlequin original work.
LCD shader made by CGWG.
image-adjustment-v2 shader and some parameters addition made by hunterk.
DS, GBA, GC color profile shaders made by Pokefan531.
GameBoy Pocket / Color / Advance picture drawn by BLUEamnesiac.
Other pictures taken from wikipedia / wikimedia.
Other work if I forget any linked to Libretro shader repository.


Slang Version compatible with most video drivers (vulkan, direct 3D, new gl “glcore”):

DOWNLOAD SLANG


CG version made originally for open gl (now for the old gl driver):

DOWNLOAD CG

It seems people with a non Nvidia GPU have problems with the LCD shader v2 contained in many of these.
Use this pack with the LCD v1 if you’re in this case:

DOWNLOAD CG AMD / Intel


Extra:

Old border background pictures (without lighting on the consoles but an effect on the glass): download

Gameboy Color border in purple for purists. Overwrite file in resources folder. download

SixWingedFreak has made several color variation borders from Blue Amnesiac work.
You can find them on the bottom of this page.

Wonderswan Overlay for vertical games on a 1080p screen in landscape.



2015-05-27: updated GBA border + GBC border
2015-05-29: small corrections, GBA standard gamma changed to 1.35
2015-06-02: corrected a strange empty space left on top of the GBA border (seen only in 2x on a 1080p screen). Made version for AMD / Intel. New slightly reworked GBC purple border as extra.
2015-06-04: Tweaked the Gameboy Pocket shader parameters and palette.
2015-06-05: made new borders for Nintendo DS.
2015-06-17: GBA and DS colors update from Pokefan531.
2016-02-18: added a WonderSwan shader.
2016-08-07: added Game Boy parameters made by Hunterk. High contrast version of the Game Boy Pocket shader. Some preset renaming.
2017-07-22: added DS/GB/GBP/GBC/GBA/GG/NGP/WSwan borders version with lighting.
2017-09-07: some cleaning and fixes for GB shaders.
2019-03-04: New SLANG version shader pack.
2019-03-05: Replaced all GBA variations with an unique one based on VBA for CG too.
2019-03-09: Some fixes for slang GB shaders compatibility with the new gl_core driver.


Best GBC shaders?
#2

Amazing job! I liked more the borders tha the shaders itself, would be nice those gba borders with touch control, the retroarch overlays gamepad are too ugly imho.


#3

Amazing job! I liked more the borders tha the shaders itself, would be nice those gba borders with touch control (to use on android), the retroarch overlays gamepad are too ugly imho.


#4

you can create an overlay with no images with hitboxes matching the areas and it would work


#5

Reworked the GBA border, less space around the screen, glass reflection on the whole glass.

screenshot (jpeg looked bad, so it’s big)


#6

I was working on a gba control overlay using the border image but there are a couple of issues. 1.) it makes the displayed screen quite small 2.) the lcd grid shader didn’t play nicely with cg2glsl so the image was messed up and I didn’t feel like debugging and/or writing a new shader by hand for it.

If the existing control overlays are “too ugly” you should just make some images you find more attractive and overwrite the existing ones.


#7

Reworked the GBC border as well. It was a bit too dark, the glass reflection should be less artificial too.

screenshot

edit: and edited again to get rid of the bending around the screen, I can see it now that it’s night time. :stuck_out_tongue: +added a fix from CGWG for the LCD shader.


#8

II’m assuming these wont be suitable for use on a Raspberry Pi? Is it feasible they could be converted?


#9

I’m no expert but I heard the glsl conversion is problematic, and perhaps the Pi is too weak for most shaders.


#10

It didn’t? Here v1 converts and works fine, but v2 fails to compile.

EDIT: v1-GLSL code: http://pastebin.com/pkzH4Xts


#11

[QUOTE=twipley;23328]It didn’t? Here v1 converts and works fine, but v2 fails to compile.

EDIT: v1-GLSL code: http://pastebin.com/pkzH4Xts[/QUOTE]

Really I don’t know, ignore what I said. I just played around with glsl a while ago to see that my phone was too weak for any shader and that’s pretty much it.


#12

Wonderful shaders! I’ve found these to be the most accurate means of simulating the displays for these handhelds. Two problems, though:

  1. The GBA and GBC shaders don’t work with my AMD graphics card. The ones in the standard repository do. This is likely due to the discrepancies between the two lcd_cgwg.cg files not being friendly to AMD cards, as I’ve discovered with several other shaders.
  2. Solid black Game Boy Colors were never sold at retail, it’s something one can get only through a custom paint job. Having it be grape/purple - or any of the five standard launch colors - would be more accurate to actually playing on a GBC.

#13

[QUOTE=bleakassassin;23447]Wonderful shaders! I’ve found these to be the most accurate means of simulating the displays for these handhelds. Two problems, though:

  1. The GBA and GBC shaders don’t work with my AMD graphics card. The ones in the standard repository do. This is likely due to the discrepancies between the two lcd_cgwg.cg files not being friendly to AMD cards, as I’ve discovered with several other shaders.
  2. Solid black Game Boy Colors were never sold at retail, it’s something one can get only through a custom paint job. Having it be grape/purple - or any of the five standard launch colors - would be more accurate to actually playing on a GBC.[/QUOTE]

1)Ah, that’s annoying. Yes, that’s probably because of the new LCD shader. The problem should be the same with The Neo-Geo Pocket and Game Gear then, did you try those? Someone with an Intel GPU sent me a pic with messed up colors while with some other people it just doesn’t launch.

2)I know but I wanted one that would be a little softer on the eyes to make a border. :stuck_out_tongue: You’ve got the purple on Github.


#14

Made a pack for AMD / Intel after all. Added a purple GBC border (slightly different than Github version).


#15

I didn’t change the Gameboy Pocket settings when I took them from Hiban DMG version, just the greys recently. I looked at it a bit more and watched some videos / screenshots of the GB Pocket (don’t have one). The screen seems to go from yellow to green depending on the lighting / contrast.

As it was really yellow and a bit dark overall with this shader, I tried to make it in-between yellow/green, brighter, and get lighter greys (while keeping the black quite dark as the real screen seems to manage to do with adequate lighting). Looks like this:

Tetris: old / new

MarioLand 2: old / new


#16

Decided to make a DS one after seeing Hunterk DS border. I thought it would look too bad on my screen but it’s quite OK, even if not that much detailed (you’re not going to see every sub-pixels on a 1080p screen, 2x scaling).

…but making the AMD/Intel version reminded me why I thought so. The LCD v1 scales badly compared to the new v2, I’m sorry you’re not going to see complete squares but more like lines if you have to use it in 2x. edit: Comparing both version and zooming in, you don’t see squares in neither of the 2 in 2x, but the LCD v2 does a better job at scaling its sub-pixels, colors are preserved.

I made 2 version:

-standard one like the DSi spacing (put 90 screen spacing in DeSmuME core options, don’t forget!) DS-shader-90-x

-one er… prototype slider version Nintendo made in secret (or not, but that’s here now), put 64 screen spacing in DeSmuME core options and the spacing will be ideal DS-shader-64-x


#17

GBA standard / high and DS colors updated with Pokefan531 new values.


#18

posting this here as per hunterk’s request. I’d love to get this image turned into a border shader for psp if possible, if anyone wants to take a crack at it before hunterk does, go right ahead. 2x 3x and 4x sizes if possible please, like the other handheld shaders that come with RA.

here’es a hacky but functional (in windows at 1080p, no idea elsewhere) zip including the cgp, edit it to figure out where to drop the png.


#19

I don’t plan to do a PSP one personally. I like the higher internal resolution option and use PPSSPP fullscreen.


#20

[QUOTE=Tatsuya79;24223]I don’t plan to do a PSP one personally. I like the higher internal resolution option and use PPSSPP fullscreen.[/QUOTE]

that’s ok, hunterk got it working and its already in the repo for those that want them :slight_smile: