From 66553d522d78ebc9cb1019fa376ce93589851fff Mon Sep 17 00:00:00 2001 From: Marcus Wanners Date: Sun, 9 Aug 2009 21:40:54 +0000 Subject: [PATCH] Added shaders from Data/User/Shaders of main repo. --- acidmetal.txt | 16 ++++++++++++++ acidtrip.txt | 6 ++++++ acidtrip2.txt | 6 ++++++ auto_toon.txt | 16 ++++++++++++++ bad_bloom.txt | 38 +++++++++++++++++++++++++++++++++ chrismas.txt | 19 +++++++++++++++++ color_swap_1.txt | 7 +++++++ cool1.txt | 22 +++++++++++++++++++ emboss.txt | 19 +++++++++++++++++ fire.txt | 39 ++++++++++++++++++++++++++++++++++ fire2.txt | 15 +++++++++++++ firewater.txt | 17 +++++++++++++++ grayscale.txt | 8 +++++++ grayscale2.txt | 9 ++++++++ invert.txt | 7 +++++++ invert_blue.txt | 7 +++++++ invertedoutline.txt | 17 +++++++++++++++ mad_world.txt | 17 +++++++++++++++ nightvision.txt | 14 +++++++++++++ nightvision2.txt | 51 +++++++++++++++++++++++++++++++++++++++++++++ posterize.txt | 26 +++++++++++++++++++++++ spookey1.txt | 20 ++++++++++++++++++ spookey2.txt | 22 +++++++++++++++++++ stereoscopic.txt | 27 ++++++++++++++++++++++++ stereoscopic2.txt | 26 +++++++++++++++++++++++ sunset.txt | 7 +++++++ toxic.txt | 22 +++++++++++++++++++ 27 files changed, 500 insertions(+) create mode 100644 acidmetal.txt create mode 100644 acidtrip.txt create mode 100644 acidtrip2.txt create mode 100644 auto_toon.txt create mode 100644 bad_bloom.txt create mode 100644 chrismas.txt create mode 100644 color_swap_1.txt create mode 100644 cool1.txt create mode 100644 emboss.txt create mode 100644 fire.txt create mode 100644 fire2.txt create mode 100644 firewater.txt create mode 100644 grayscale.txt create mode 100644 grayscale2.txt create mode 100644 invert.txt create mode 100644 invert_blue.txt create mode 100644 invertedoutline.txt create mode 100644 mad_world.txt create mode 100644 nightvision.txt create mode 100644 nightvision2.txt create mode 100644 posterize.txt create mode 100644 spookey1.txt create mode 100644 spookey2.txt create mode 100644 stereoscopic.txt create mode 100644 stereoscopic2.txt create mode 100644 sunset.txt create mode 100644 toxic.txt diff --git a/acidmetal.txt b/acidmetal.txt new file mode 100644 index 0000000000..7f479ca274 --- /dev/null +++ b/acidmetal.txt @@ -0,0 +1,16 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float blue = 0.0; + + if (c0.r > 0.25 && c0.b > 0.25) + { + blue = c0.b; + red = c0.r; + } + + ocol0 = float4(red, c0.g, blue, 1.0); +} \ No newline at end of file diff --git a/acidtrip.txt b/acidtrip.txt new file mode 100644 index 0000000000..a5abb48d8a --- /dev/null +++ b/acidtrip.txt @@ -0,0 +1,6 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + ocol0 = (texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*8; +} diff --git a/acidtrip2.txt b/acidtrip2.txt new file mode 100644 index 0000000000..6673879589 --- /dev/null +++ b/acidtrip2.txt @@ -0,0 +1,6 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + ocol0 = texRECT(samp0, uv0+1).rgba * 1.3 * abs(texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*8; +} diff --git a/auto_toon.txt b/auto_toon.txt new file mode 100644 index 0000000000..7c7e94387d --- /dev/null +++ b/auto_toon.txt @@ -0,0 +1,16 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 to_gray = float4(0.3,0.59,0.11,0); + float x1 = dot(to_gray, texRECT(samp0, uv0+float2(1,1))); + float x0 = dot(to_gray, texRECT(samp0, uv0+float2(-1,-1))); + float x3 = dot(to_gray, texRECT(samp0, uv0+float2(1,-1))); + float x2 = dot(to_gray, texRECT(samp0, uv0+float2(-1,1))); + float edge = (x1 - x0) * (x1 - x0); + float edge2 = (x3 - x2) * (x3 - x2); + edge += edge2; + float4 color = texRECT(samp0, uv0).rgba; + + ocol0 = max(color - float4(edge, edge, edge, edge) * 12, float4(0,0,0,0)); +} diff --git a/bad_bloom.txt b/bad_bloom.txt new file mode 100644 index 0000000000..1c73998f00 --- /dev/null +++ b/bad_bloom.txt @@ -0,0 +1,38 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0, in float2 uv1 : TEXCOORD1) +{ + float4 c_center = texRECT(samp0, uv0.xy).rgba; + + float4 bloom_sum = float4(0.0, 0.0, 0.0, 0.0); + uv0 += float2(0.3, 0.3); + float radius1 = 1.3; + bloom_sum += texRECT(samp0, uv0 + float2(-1.5, -1.5) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(-2.5, 0) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(-1.5, 1.5) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(0, 2.5) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(1.5, 1.5) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(2.5, 0) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(1.5, -1.5) * radius1); + bloom_sum += texRECT(samp0, uv0 + float2(0, -2.5) * radius1); + + float radius2 = 4.6; + bloom_sum += texRECT(samp0, uv0 + float2(-1.5, -1.5) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(-2.5, 0) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(-1.5, 1.5) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(0, 2.5) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(1.5, 1.5) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(2.5, 0) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(1.5, -1.5) * radius2); + bloom_sum += texRECT(samp0, uv0 + float2(0, -2.5) * radius2); + + bloom_sum *= 0.07; + bloom_sum -= float4(0.3, 0.3, 0.3, 0.3); + bloom_sum = max(bloom_sum, float4(0,0,0,0)); + + float2 vpos = (uv1 - float2(.5, .5)) * 2; + float dist = (dot(vpos, vpos)); + dist = 1 - 0.4*dist; + + ocol0 = (c_center * 0.7 + bloom_sum) * dist; +} diff --git a/chrismas.txt b/chrismas.txt new file mode 100644 index 0000000000..6de668b2db --- /dev/null +++ b/chrismas.txt @@ -0,0 +1,19 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + + if (c0.r < 0.50 || c0.b > 0.5) + { + green = c0.g + (c0.b / 2); + } + else + { + red = c0.r + (c0.b / 2); + } + + ocol0 = float4(red, green, 0.0, 1.0); +} \ No newline at end of file diff --git a/color_swap_1.txt b/color_swap_1.txt new file mode 100644 index 0000000000..68debd6837 --- /dev/null +++ b/color_swap_1.txt @@ -0,0 +1,7 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + ocol0 = float4(c0.g, c0.b,c0.r, 1.0); +} \ No newline at end of file diff --git a/cool1.txt b/cool1.txt new file mode 100644 index 0000000000..66de9c4d38 --- /dev/null +++ b/cool1.txt @@ -0,0 +1,22 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + float blue = 0.0; + + if (c0.r < 0.50 || c0.b > 0.5) + { + blue = c0.r + (c0.b / 2); + red = c0.g + (c0.b / 2); + } + else + { + blue = c0.r + (c0.b / 2); + green = c0.r + (c0.b / 2); + } + + ocol0 = float4(red, green, blue, 1.0); +} \ No newline at end of file diff --git a/emboss.txt b/emboss.txt new file mode 100644 index 0000000000..62850dff44 --- /dev/null +++ b/emboss.txt @@ -0,0 +1,19 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float4 c1 = texRECT(samp0, uv0 + float2(5,5)).rgba; + float y = (0.222 * c1.r) + (0.707 * c1.g) + (0.071 * c1.b); + float y2 = ((0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b)) / 3; + float red = c0.r; + float green = c0.g; + float blue = c0.b; + float alpha = c0.a; + + red = y2 + (1 - y); + green = y2 + (1 - y); + blue = y2 + (1 - y); + + ocol0 = float4(red, green, blue, alpha); +} \ No newline at end of file diff --git a/fire.txt b/fire.txt new file mode 100644 index 0000000000..6094307f40 --- /dev/null +++ b/fire.txt @@ -0,0 +1,39 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + float blue = 0.0; + + red = c0.r; + + + if (c0.r > 0.0) + { + if (c0.g > c0.r) + { + green = (c0.g - (c0.g - c0.r)) / 3; + } + } + + if (c0.b > 0.0 && c0.r < 0.25) + { + red = c0.b; + green = c0.b / 3; + } + + if (c0.g > 0.0 && c0.r < 0.25) + { + red = c0.g; + green = c0.g / 3; + } + + if (((c0.r + c0.g + c0.b) / 3) > 0.9) + { + green = c0.r / 3; + } + + ocol0 = float4(red, green, blue, 1.0); +} \ No newline at end of file diff --git a/fire2.txt b/fire2.txt new file mode 100644 index 0000000000..3f7c09e3db --- /dev/null +++ b/fire2.txt @@ -0,0 +1,15 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + float blue = 0.0; + float avg = (c0.r + c0.g + c0.b) / 3; + + red = c0.r + (c0.g / 2) + (c0.b / 3); + green = c0.r / 3; + + ocol0 = float4(red, green, blue, 1.0); +} \ No newline at end of file diff --git a/firewater.txt b/firewater.txt new file mode 100644 index 0000000000..c610f40d45 --- /dev/null +++ b/firewater.txt @@ -0,0 +1,17 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float4 c1 = texRECT(samp0, uv0 + float2(1,1)).rgba; + float4 c2 = texRECT(samp0, uv0 + float2(-1,-1)).rgba; + float red = c0.r; + float green = c0.g; + float blue = c0.b; + float alpha = c0.a; + + red = c0.r - c1.b; + blue = c0.b - c2.r + (c0.g - c0.r); + + ocol0 = float4(red, 0.0, blue, alpha); +} \ No newline at end of file diff --git a/grayscale.txt b/grayscale.txt new file mode 100644 index 0000000000..85fee9e546 --- /dev/null +++ b/grayscale.txt @@ -0,0 +1,8 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float avg = (c0.r + c0.g + c0.b) / 3.0; + ocol0 = float4(avg, avg, avg, c0.a); +} diff --git a/grayscale2.txt b/grayscale2.txt new file mode 100644 index 0000000000..bf179dcbbb --- /dev/null +++ b/grayscale2.txt @@ -0,0 +1,9 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + // Info: http://www.oreillynet.com/cs/user/view/cs_msg/8691 + float avg = (0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b); + ocol0 = float4(avg, avg, avg, c0.a); +} diff --git a/invert.txt b/invert.txt new file mode 100644 index 0000000000..efd57def22 --- /dev/null +++ b/invert.txt @@ -0,0 +1,7 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + ocol0 = float4(1.0, 1.0, 1.0, 1.0) - c0; +} diff --git a/invert_blue.txt b/invert_blue.txt new file mode 100644 index 0000000000..7d6cf651ca --- /dev/null +++ b/invert_blue.txt @@ -0,0 +1,7 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + ocol0 = float4(0.0, 0.0, 0.7, 1.0) - c0; +} \ No newline at end of file diff --git a/invertedoutline.txt b/invertedoutline.txt new file mode 100644 index 0000000000..72e835ac41 --- /dev/null +++ b/invertedoutline.txt @@ -0,0 +1,17 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float4 c1 = texRECT(samp0, uv0 + float2(3,3)).rgba; + float red = c0.r; + float green = c0.g; + float blue = c0.b; + float alpha = c0.a; + + red = c0.r - c1.r; + green = c0.g - c1.g; + blue = c0.b - c1.b; + + ocol0 = float4(red, green, blue, alpha); +} \ No newline at end of file diff --git a/mad_world.txt b/mad_world.txt new file mode 100644 index 0000000000..1f7184fe67 --- /dev/null +++ b/mad_world.txt @@ -0,0 +1,17 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 emboss = (texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*2.0f; + emboss -= (texRECT(samp0, uv0+float2(1,-1)).rgba - texRECT(samp0, uv0+float2(-1,1)).rgba); + float4 color = texRECT(samp0, uv0).rgba; + if (color.r > 0.8 && color.b + color.b < 0.2) + ocol0 = float4(1,0,0,0); + else { + color += emboss; + if (dot(color.rgb, float3(0.3, 0.5, 0.2)) > 0.5) + ocol0 = float4(1,1,1,1); + else + ocol0 = float4(0,0,0,0); + } +} \ No newline at end of file diff --git a/nightvision.txt b/nightvision.txt new file mode 100644 index 0000000000..db354d0b81 --- /dev/null +++ b/nightvision.txt @@ -0,0 +1,14 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float green = c0.g; + + if (c0.g < 0.50) + { + green = c0.r + c0.b; + } + + ocol0 = float4(0.0, green, 0.0, 1.0); +} \ No newline at end of file diff --git a/nightvision2.txt b/nightvision2.txt new file mode 100644 index 0000000000..e0e75718ee --- /dev/null +++ b/nightvision2.txt @@ -0,0 +1,51 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + //variables + int internalresolution = 1282; //for 800x600; should be changed for other settings. + float4 c0 = texRECT(samp0, uv0).rgba; + //blur + float4 blurtotal = float4(0, 0, 0, 0); + float blursize = 1.5; + blurtotal += texRECT(samp0, uv0 + float2(-blursize, -blursize)); + blurtotal += texRECT(samp0, uv0 + float2(-blursize, blursize)); + blurtotal += texRECT(samp0, uv0 + float2( blursize, -blursize)); + blurtotal += texRECT(samp0, uv0 + float2( blursize, blursize)); + blurtotal += texRECT(samp0, uv0 + float2(-blursize, 0)); + blurtotal += texRECT(samp0, uv0 + float2( blursize, 0)); + blurtotal += texRECT(samp0, uv0 + float2( 0, -blursize)); + blurtotal += texRECT(samp0, uv0 + float2( 0, blursize)); + blurtotal *= 0.125; + c0 = blurtotal; + //greyscale + float grey = ((0.3 * c0.r) + (0.4 * c0.g) + (0.3 * c0.b)); + // brighten + grey = grey * 0.5 + 0.7; + // darken edges + float x = uv0[0]; + float y = uv0[1]; + if (x > internalresolution/2) x = internalresolution-x; + if (y > internalresolution/2) y = internalresolution-y; + if (x > internalresolution/2*0.95) x = internalresolution/2*0.95; + if (y > internalresolution/2*0.95) y = internalresolution/2*0.95; + x = -x+641; + y = -y+641; + /*****inline square root routines*****/ + // bit of a performance bottleneck. + // neccessary to make the darkened area rounded + // instead of rhombus-shaped. + float sqrt=x/10; + while((sqrt*sqrt) < x) sqrt+=0.1; + x = sqrt; + sqrt=y/10; + while((sqrt*sqrt) < y) sqrt+=0.1; + y = sqrt; + /*****end of inline square root routines*****/ + x *= 2; + y *= 2; + grey -= x/200; + grey -= y/200; + // output + ocol0 = float4(0, grey, 0, 1.0); +} \ No newline at end of file diff --git a/posterize.txt b/posterize.txt new file mode 100644 index 0000000000..fca009b145 --- /dev/null +++ b/posterize.txt @@ -0,0 +1,26 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + float blue = 0.0; + + if (c0.r > 0.25) + { + red = c0.r; + } + + if (c0.g > 0.25) + { + green = c0.g; + } + + if (c0.b > 0.25) + { + blue = c0.b; + } + + ocol0 = float4(red, green, blue, 1.0); +} \ No newline at end of file diff --git a/spookey1.txt b/spookey1.txt new file mode 100644 index 0000000000..f0cde83b55 --- /dev/null +++ b/spookey1.txt @@ -0,0 +1,20 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float blue = 0.0; + + if (c0.r < 0.50 || c0.b > 0.5) + { + red = c0.g + (c0.b / 2); + } + else + { + red = c0.g + (c0.b / 2); + blue = c0.r + (c0.b / 2); + } + + ocol0 = float4(red, 0.0, blue, 1.0); +} \ No newline at end of file diff --git a/spookey2.txt b/spookey2.txt new file mode 100644 index 0000000000..747d236427 --- /dev/null +++ b/spookey2.txt @@ -0,0 +1,22 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + float blue = 0.0; + + if (c0.r < 0.50 || c0.b > 0.5) + { + red = c0.g + (c0.b / 2); + } + else + { + red = c0.g + (c0.b / 2); + blue = c0.r + (c0.b / 2); + green = c0.r + (c0.b / 2); + } + + ocol0 = float4(red, green, blue, 1.0); +} \ No newline at end of file diff --git a/stereoscopic.txt b/stereoscopic.txt new file mode 100644 index 0000000000..254db332c0 --- /dev/null +++ b/stereoscopic.txt @@ -0,0 +1,27 @@ +// Omega's 3D Stereoscopic filtering +// TODO: Need depth info! + +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; // Source Color + float sep = 5; + float red = c0.r; + float green = c0.g; + float blue = c0.b; + + + // Red Eye (Red) + float4 c1 = texRECT(samp0, uv0 + float2(sep,0)).rgba; + red = max(c0.r, c1.r); + + // Right Eye (Cyan) + float4 c2 = texRECT(samp0, uv0 + float2(-sep,0)).rgba; + float cyan = (c2.g + c2.b) / 2; + green = max(c0.g, cyan); + blue = max(c0.b, cyan); + + + ocol0 = float4(red, green, blue, c0.a); +} \ No newline at end of file diff --git a/stereoscopic2.txt b/stereoscopic2.txt new file mode 100644 index 0000000000..f694aec2e6 --- /dev/null +++ b/stereoscopic2.txt @@ -0,0 +1,26 @@ +// Omega's 3D Stereoscopic filtering (Amber/Blue) +// TODO: Need depth info! + +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; // Source Color + float sep = 5; + float red = c0.r; + float green = c0.g; + float blue = c0.b; + + // Left Eye (Amber) + float4 c2 = texRECT(samp0, uv0 + float2(sep,0)).rgba; + float amber = (c2.r + c2.g) / 2; + red = max(c0.r, amber); + green = max(c0.g, amber); + + // Right Eye (Blue) + float4 c1 = texRECT(samp0, uv0 + float2(-sep,0)).rgba; + blue = max(c0.b, c1.b); + + + ocol0 = float4(red, green, blue, c0.a); +} \ No newline at end of file diff --git a/sunset.txt b/sunset.txt new file mode 100644 index 0000000000..e92562461e --- /dev/null +++ b/sunset.txt @@ -0,0 +1,7 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + ocol0 = float4(c0.b, c0.g, c0.r, c0.a); +} diff --git a/toxic.txt b/toxic.txt new file mode 100644 index 0000000000..81205ed0f8 --- /dev/null +++ b/toxic.txt @@ -0,0 +1,22 @@ +uniform samplerRECT samp0 : register(s0); + +void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) +{ + float4 c0 = texRECT(samp0, uv0).rgba; + float red = 0.0; + float green = 0.0; + float blue = 0.0; + + if (c0.r < 0.50 || c0.b > 0.5) + { + blue = c0.r + (c0.b / 2); + red = c0.g + (c0.b / 2); + } + else + { + red = c0.g + (c0.b / 2); + green = c0.r + (c0.b / 2); + } + + ocol0 = float4(red, green, blue, 1.0); +} \ No newline at end of file