From f7cf08900e3ec20cce49ae689c09b13a326c805a Mon Sep 17 00:00:00 2001 From: Matt Akins Date: Thu, 4 Apr 2024 16:30:35 -0700 Subject: [PATCH 1/5] Restored gameboy shader Blending Mode default to 0 This variable determines how pixels are blended and affects the appearance of the pixel grid. The original Cg gameboy shader defaulted to Blending Mode 0. While a matter of preference, I find Blending Mode 0 looks better across a wider range of resolutions (especially handheld, lower resolution devices) and doesn't wash out the image like Blending Mode 1. --- handheld/shaders/gameboy/shader-files/gb-pass1.slang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/handheld/shaders/gameboy/shader-files/gb-pass1.slang b/handheld/shaders/gameboy/shader-files/gb-pass1.slang index b3486ee6..6697c9a5 100644 --- a/handheld/shaders/gameboy/shader-files/gb-pass1.slang +++ b/handheld/shaders/gameboy/shader-files/gb-pass1.slang @@ -21,7 +21,7 @@ layout(std140, set = 0, binding = 0) uniform UBO // 0 - only the space between dots is blending // 1 - all texels are blended /* TODO/FIXME - When set to zero, frame will be a solid green color */ -#pragma parameter blending_mode "Blending Mode" 1.0 0.0 1.0 1.0 +#pragma parameter blending_mode "Blending Mode" 0.0 0.0 1.0 1.0 // The amount of alpha swapped between neighboring texels #pragma parameter adjacent_texel_alpha_blending "Neighbor Blending" 0.1755 0.0 1.0 0.05 From 69c2821239205fc952edbddd276f4deda44ed801 Mon Sep 17 00:00:00 2001 From: Matt Akins Date: Thu, 4 Apr 2024 16:36:07 -0700 Subject: [PATCH 2/5] Added gameboy-color-white-bg preset for gameboy shader This is an alternative to my previous gameboy-color preset. It features a white background as opposed to the traditional sepia tone used to mimic the original Game Boy panels. This results in truer, brighter colors but a bit harder on the eyes and less nostalgic. --- handheld/gameboy-color-white-bg.slangp | 46 ++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 handheld/gameboy-color-white-bg.slangp diff --git a/handheld/gameboy-color-white-bg.slangp b/handheld/gameboy-color-white-bg.slangp new file mode 100644 index 00000000..d396203a --- /dev/null +++ b/handheld/gameboy-color-white-bg.slangp @@ -0,0 +1,46 @@ +shaders = 5 + +shader0 = shaders/gameboy/shader-files/gb-pass0.slang +filter_linear0 = false +scale_type0 = viewport +scale0 = 1.0 +alias0 = "PASS0" +color_toggle = "1.000000" +screen_light = "0.850000" + +shader1 = shaders/gameboy/shader-files/gb-pass1.slang +filter_linear1 = false +scale_type1 = source +scale1 = 1.0 +alias1 = "PASS1" + +shader2 = shaders/gameboy/shader-files/gb-pass2.slang +filter_linear2 = false +scale_type2 = source +scale2 = 1.0 +alias2 = "PASS2" + +shader3 = shaders/gameboy/shader-files/gb-pass3.slang +filter_linear3 = false +scale_type3 = source +scale3 = 1.0 +alias3 = "PASS3" + +shader4 = shaders/gameboy/shader-files/gb-pass4.slang +filter_linear4 = false +scale_type4 = source +scale4 = 1.0 +alias4 = "PASS4" + +shader4 = shaders/gameboy/shader-files/gb-pass5.slang +filter_linear4 = false +scale_type4 = source +scale4 = 1.0 +alias4 = "PASS5" + + +textures = COLOR_PALETTE;BACKGROUND +COLOR_PALETTE = shaders/gameboy/resources/sample-palettes/b-w-palette.png +COLOR_PALETTE_linear = false +BACKGROUND = shaders/gameboy/resources/sample-bgs/paper-bg.png +BACKGROUND_linear = true \ No newline at end of file From eab71b6be93da9b9bc600420b6080321c394a43a Mon Sep 17 00:00:00 2001 From: Matt Akins Date: Thu, 4 Apr 2024 16:43:54 -0700 Subject: [PATCH 3/5] Added gameboy-pocket-high-contrast Color palette taken from Tatsuya79's Handheld Border Shader project. A great color scheme for Game Boy games that falls in-between gameboy-pocket and gameboy-light-mode. --- handheld/gameboy-pocket-high-contrast.slangp | 38 ++++++++++++++++++ .../gbp-palette-high-contrast.png | Bin 0 -> 1072 bytes 2 files changed, 38 insertions(+) create mode 100644 handheld/gameboy-pocket-high-contrast.slangp create mode 100644 handheld/shaders/gameboy/resources/sample-palettes/gbp-palette-high-contrast.png diff --git a/handheld/gameboy-pocket-high-contrast.slangp b/handheld/gameboy-pocket-high-contrast.slangp new file mode 100644 index 00000000..a86f8e88 --- /dev/null +++ b/handheld/gameboy-pocket-high-contrast.slangp @@ -0,0 +1,38 @@ +shaders = 5 + +shader0 = shaders/gameboy/shader-files/gb-pass0.slang +filter_linear0 = false +scale_type0 = viewport +scale0 = 1.0 +alias0 = "PASS0" + +shader1 = shaders/gameboy/shader-files/gb-pass1.slang +filter_linear1 = false +scale_type1 = source +scale1 = 1.0 +alias1 = "PASS1" + +shader2 = shaders/gameboy/shader-files/gb-pass2.slang +filter_linear2 = false +scale_type2 = source +scale2 = 1.0 +alias2 = "PASS2" + +shader3 = shaders/gameboy/shader-files/gb-pass3.slang +filter_linear3 = false +scale_type3 = source +scale3 = 1.0 +alias3 = "PASS3" + +shader4 = shaders/gameboy/shader-files/gb-pass4.slang +filter_linear4 = false +scale_type4 = source +scale4 = 1.0 +alias4 = "PASS4" + + +textures = COLOR_PALETTE;BACKGROUND +COLOR_PALETTE = shaders/gameboy/resources/sample-palettes/gbp-palette-high-contrast.png +COLOR_PALETTE_linear = false +BACKGROUND = shaders/gameboy/resources/sample-bgs/paper-bg.png +BACKGROUND_linear = true \ No newline at end of file diff --git a/handheld/shaders/gameboy/resources/sample-palettes/gbp-palette-high-contrast.png b/handheld/shaders/gameboy/resources/sample-palettes/gbp-palette-high-contrast.png new file mode 100644 index 0000000000000000000000000000000000000000..cd0f50232daf848eb782ad30c5289a64b9e8f545 GIT binary patch literal 1072 zcmbVLJ#W)M7pJv0D3#eQn%| z0gxD&_!F=)u~DfbVqpY{&M+adFfejXlfqDS;3WI*-g}?-`+3>idN4nCdrp$1`TB;} z68lr}tqujuX0lyw&!P_k2X; zwN3`Qz^uPC1f)oCaya)f&*-%LJK*D zc@G#mT-J1?K~vG8t0Py3V7z4EEg?O(<<-W%#H}a~IFDUT8xDu+u%NP}uR(;6rW=}J zC_+O?k0OpUB}x}37Cf5zNf7gZMIg6`yX=4$WfAFl3Sr!6To{hhaiK)Xv<$}@RCO&3 z^SnmdDR0rgVO*-6wvS?}wP?x?5?}PAw>SZd+Fk7^R}|5>50gMN1@C*zKL}~W>t0b7 zFDeO$>zIaVpsubEV(JR?O+&$i*out{j_%-|Wl=J*a~Zy5qB1lK6&n^1gjKt2I!4uU zYBePArIInh)}xf;$fpzEf$%-XmaoLRm4sr>k~U-elPPEp7-#8##h_BjyKaFyJ3&O) zFuj|%={#$XCcz;kwS((+;XXLu$eF_HQ4f(qhtK_(gr1|@ Date: Thu, 4 Apr 2024 16:46:17 -0700 Subject: [PATCH 4/5] Added gameboy-advance preset Created a preset for the gameboy shader optimized for Game Boy Advance games. This preset creates a cool LCD effect where pixels really pop. --- handheld/gameboy-advance.slangp | 49 +++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 handheld/gameboy-advance.slangp diff --git a/handheld/gameboy-advance.slangp b/handheld/gameboy-advance.slangp new file mode 100644 index 00000000..5fa95ed1 --- /dev/null +++ b/handheld/gameboy-advance.slangp @@ -0,0 +1,49 @@ +shaders = 5 + +shader0 = shaders/gameboy/shader-files/gb-pass0.slang +filter_linear0 = false +scale_type0 = viewport +scale0 = 1.0 +alias0 = "PASS0" +color_toggle = "1.000000" +baseline_alpha = "1.000000" +response_time = "0.000000" +contrast = "1.000000" +screen_light = "0.850000" + +shader1 = shaders/gameboy/shader-files/gb-pass1.slang +filter_linear1 = false +scale_type1 = source +scale1 = 1.0 +alias1 = "PASS1" + +shader2 = shaders/gameboy/shader-files/gb-pass2.slang +filter_linear2 = false +scale_type2 = source +scale2 = 1.0 +alias2 = "PASS2" + +shader3 = shaders/gameboy/shader-files/gb-pass3.slang +filter_linear3 = false +scale_type3 = source +scale3 = 1.0 +alias3 = "PASS3" + +shader4 = shaders/gameboy/shader-files/gb-pass4.slang +filter_linear4 = false +scale_type4 = source +scale4 = 1.0 +alias4 = "PASS4" + +shader4 = shaders/gameboy/shader-files/gb-pass5.slang +filter_linear4 = false +scale_type4 = source +scale4 = 1.0 +alias4 = "PASS5" + + +textures = COLOR_PALETTE;BACKGROUND +COLOR_PALETTE = shaders/gameboy/resources/sample-palettes/b-w-palette.png +COLOR_PALETTE_linear = false +BACKGROUND = shaders/gameboy/resources/sample-bgs/paper-bg.png +BACKGROUND_linear = true \ No newline at end of file From 155e471cae3db9a619e1d220c64822c3b3b7dc90 Mon Sep 17 00:00:00 2001 From: Matt Akins Date: Sun, 7 Apr 2024 23:12:28 -0700 Subject: [PATCH 5/5] Updated gameboy preset names based on feedback --- .../{gameboy-advance.slangp => gameboy-advance-dot-matrix.slangp} | 0 ...r-white-bg.slangp => gameboy-color-dot-matrix-white-bg.slangp} | 0 .../{gameboy-color.slangp => gameboy-color-dot-matrix.slangp} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename handheld/{gameboy-advance.slangp => gameboy-advance-dot-matrix.slangp} (100%) rename handheld/{gameboy-color-white-bg.slangp => gameboy-color-dot-matrix-white-bg.slangp} (100%) rename handheld/{gameboy-color.slangp => gameboy-color-dot-matrix.slangp} (100%) diff --git a/handheld/gameboy-advance.slangp b/handheld/gameboy-advance-dot-matrix.slangp similarity index 100% rename from handheld/gameboy-advance.slangp rename to handheld/gameboy-advance-dot-matrix.slangp diff --git a/handheld/gameboy-color-white-bg.slangp b/handheld/gameboy-color-dot-matrix-white-bg.slangp similarity index 100% rename from handheld/gameboy-color-white-bg.slangp rename to handheld/gameboy-color-dot-matrix-white-bg.slangp diff --git a/handheld/gameboy-color.slangp b/handheld/gameboy-color-dot-matrix.slangp similarity index 100% rename from handheld/gameboy-color.slangp rename to handheld/gameboy-color-dot-matrix.slangp