Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
137 changes: 0 additions & 137 deletions skeleton/BASE/Shaders/cubic.glsl

This file was deleted.

File renamed without changes.
138 changes: 138 additions & 0 deletions skeleton/BASE/Shaders/glsl/res-independent-scanlines.glsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
/*
Resolution-Independent Scanlines
based on
Scanlines Sine Absolute Value
An ultra light scanline shader
by RiskyJumps
license: public domain
*/

#pragma parameter amp "Amplitude" 1.2500 0.000 2.000 0.05
#pragma parameter phase "Phase" 0.5000 0.000 2.000 0.05
#pragma parameter lines_black "Lines Blacks" 0.0000 0.000 1.000 0.05
#pragma parameter lines_white "Lines Whites" 1.0000 0.000 2.000 0.05
#pragma parameter imageSize "Simulated Image Height" 224.0 144.0 288.0 1.0
#pragma parameter autoscale "Automatic Scale" 0.0 0.0 1.0 1.0

#define freq 0.500000
#define offset 0.000000
#define pi 3.141592654

#if defined(VERTEX)

#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif

#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif

COMPAT_ATTRIBUTE vec4 VertexCoord;
COMPAT_ATTRIBUTE vec4 TexCoord;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING float omega;

uniform mat4 MVPMatrix;
uniform COMPAT_PRECISION int FrameDirection;
uniform COMPAT_PRECISION int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;

// compatibility #defines
#define vTexCoord TEX0.xy
#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize
#define OutSize vec4(OutputSize, 1.0 / OutputSize)

#define pi 3.141592654

void main()
{
gl_Position = MVPMatrix * VertexCoord;
TEX0.xy = TexCoord.xy;
omega = 2.0 * pi * freq; // Angular frequency
}

#elif defined(FRAGMENT)

#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif

#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out COMPAT_PRECISION vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif

uniform COMPAT_PRECISION int FrameDirection;
uniform COMPAT_PRECISION int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
uniform sampler2D Texture;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING float omega;

// compatibility #defines
#define Source Texture
#define vTexCoord TEX0.xy

#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize
#define OutSize vec4(OutputSize, 1.0 / OutputSize)


#ifdef PARAMETER_UNIFORM
uniform COMPAT_PRECISION float amp, phase, lines_black, lines_white,
imageSize, autoscale;
#else
#define amp 1.25
#define phase 0.5
#define lines_black 0.0
#define lines_white 1.0
#define imageSize 224.0
#define autoscale 0.0

#endif

void main()
{
float scale = imageSize; if (autoscale == 1.0) scale = InputSize.y;
float angle = (gl_FragCoord.y * OutSize.w) * omega * scale + phase;
vec3 color = COMPAT_TEXTURE(Source, vTexCoord).xyz;
float grid;

float lines;

lines = sin(angle);
lines *= amp;
lines += offset;
lines = abs(lines);
lines *= lines_white - lines_black;
lines += lines_black;
color *= lines;

FragColor = vec4(color.xyz, 1.0);
}

#endif
File renamed without changes.
11 changes: 11 additions & 0 deletions skeleton/BASE/Shaders/old-tv.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
minarch_nrofshaders = 2
minarch_shader1 = barrel-distortion.glsl
minarch_shader1_filter = NEAREST
minarch_shader1_srctype = source
minarch_shader1_scaletype = source
minarch_shader1_upscale = screen
minarch_shader2 = res-independent-scanlines.glsl
minarch_shader2_filter = NEAREST
minarch_shader2_srctype = source
minarch_shader2_scaletype = source
minarch_shader2_upscale = screen
7 changes: 7 additions & 0 deletions skeleton/BASE/Shaders/pixelperfect-sharp.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
minarch_nrofshaders = 1
minarch_shader1 = pixellate.glsl
minarch_shader1_filter = NEAREST
minarch_shader1_srctype = source
minarch_shader1_scaletype = source
minarch_shader1_upscale = screen
minarch_scale_filter = NEAREST
7 changes: 7 additions & 0 deletions skeleton/BASE/Shaders/pixelperfect-smooth.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
minarch_nrofshaders = 1
minarch_shader1 = stock.glsl
minarch_shader1_filter = NEAREST
minarch_shader1_srctype = source
minarch_shader1_scaletype = source
minarch_shader1_upscale = 3
minarch_scale_filter = LINEAR
16 changes: 16 additions & 0 deletions skeleton/BASE/Shaders/real-gameboy.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
minarch_nrofshaders = 2
minarch_shader1 = pixellate.glsl
minarch_shader1_filter = NEAREST
minarch_shader1_srctype = source
minarch_shader1_scaletype = source
minarch_shader1_upscale = screen
minarch_shader2 = lcd3x.glsl
minarch_shader2_filter = NEAREST
minarch_shader2_srctype = source
minarch_shader2_scaletype = source
minarch_shader2_upscale = screen
minarch_scale_filter = NEAREST
gambatte_gb_palette_twb64_2 = TWB64 163 - Classic LCD
gambatte_gb_colorization = internal
gambatte_gbc_color_correction = always
gambatte_gbc_color_correction_mode = accurate
12 changes: 12 additions & 0 deletions skeleton/BASE/Shaders/real-gba.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
minarch_nrofshaders = 2
minarch_shader1 = pixellate.glsl
minarch_shader1_filter = NEAREST
minarch_shader1_srctype = source
minarch_shader1_scaletype = source
minarch_shader1_upscale = screen
minarch_shader2 = lcd3x.glsl
minarch_shader2_filter = NEAREST
minarch_shader2_srctype = source
minarch_shader2_scaletype = source
minarch_shader2_upscale = screen
minarch_scale_filter = NEAREST
Loading