mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-10 08:09:26 +01:00
Set svn:eol-style native.
This commit is contained in:
parent
f8c01efece
commit
4b68a543ba
28
README.txt
28
README.txt
@ -1,15 +1,15 @@
|
|||||||
//dummy shader:
|
//dummy shader:
|
||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.r, c0.g, c0.b, c0.a);
|
ocol0 = float4(c0.r, c0.g, c0.b, c0.a);
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
And now that's over with, the contents of this readme file!
|
And now that's over with, the contents of this readme file!
|
||||||
For best results, turn Wordwrap formatting on...
|
For best results, turn Wordwrap formatting on...
|
||||||
The shaders shown in the dropdown box in the video plugin configuration window are kept in the directory named User/Data/Shaders. They are linked in to the dolphin source from the repository at <http://dolphin-shaders-database.googlecode.com/svn/trunk/>. See <http://code.google.com/p/dolphin-shaders-database/wiki/Documentation> for more details on the way shaders work.
|
The shaders shown in the dropdown box in the video plugin configuration window are kept in the directory named User/Data/Shaders. They are linked in to the dolphin source from the repository at <http://dolphin-shaders-database.googlecode.com/svn/trunk/>. See <http://code.google.com/p/dolphin-shaders-database/wiki/Documentation> for more details on the way shaders work.
|
||||||
|
|
||||||
This file will hopefully hold more content in future...
|
This file will hopefully hold more content in future...
|
||||||
*/
|
*/
|
@ -1,18 +1,18 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
if (c0.r > 0.15 && c0.b > 0.15)
|
if (c0.r > 0.15 && c0.b > 0.15)
|
||||||
{
|
{
|
||||||
blue = 0.5;
|
blue = 0.5;
|
||||||
red = 0.5;
|
red = 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
float green = max(c0.r + c0.b, c0.g);
|
float green = max(c0.r + c0.b, c0.g);
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
12
acidtrip.txt
12
acidtrip.txt
@ -1,6 +1,6 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
ocol0 = (texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*8;
|
ocol0 = (texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*8;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
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;
|
ocol0 = texRECT(samp0, uv0+1).rgba * 1.3 * abs(texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*8;
|
||||||
}
|
}
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 to_gray = float4(0.3,0.59,0.11,0);
|
float4 to_gray = float4(0.3,0.59,0.11,0);
|
||||||
float x1 = dot(to_gray, texRECT(samp0, uv0+float2(1,1)));
|
float x1 = dot(to_gray, texRECT(samp0, uv0+float2(1,1)));
|
||||||
float x0 = 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 x3 = dot(to_gray, texRECT(samp0, uv0+float2(1,-1)));
|
||||||
float x2 = 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 edge = (x1 - x0) * (x1 - x0);
|
||||||
float edge2 = (x3 - x2) * (x3 - x2);
|
float edge2 = (x3 - x2) * (x3 - x2);
|
||||||
edge += edge2;
|
edge += edge2;
|
||||||
float4 color = texRECT(samp0, uv0).rgba;
|
float4 color = texRECT(samp0, uv0).rgba;
|
||||||
|
|
||||||
ocol0 = max(color - float4(edge, edge, edge, edge) * 12, float4(0,0,0,0));
|
ocol0 = max(color - float4(edge, edge, edge, edge) * 12, float4(0,0,0,0));
|
||||||
}
|
}
|
||||||
|
196
auto_toon2.txt
196
auto_toon2.txt
@ -1,99 +1,99 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
//Changethis to increase the number of colors.
|
//Changethis to increase the number of colors.
|
||||||
float numColors =8;
|
float numColors =8;
|
||||||
|
|
||||||
float4 to_gray = float4(0.3,0.59,0.11,0);
|
float4 to_gray = float4(0.3,0.59,0.11,0);
|
||||||
float x1 = dot(to_gray, texRECT(samp0, uv0+float2(1,1)));
|
float x1 = dot(to_gray, texRECT(samp0, uv0+float2(1,1)));
|
||||||
float x0 = 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 x3 = dot(to_gray, texRECT(samp0, uv0+float2(1,-1)));
|
||||||
float x2 = 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 edge = (x1 - x0) * (x1 - x0);
|
||||||
float edge2 = (x3 - x2) * (x3 - x2);
|
float edge2 = (x3 - x2) * (x3 - x2);
|
||||||
edge += edge2;
|
edge += edge2;
|
||||||
float4 color = texRECT(samp0, uv0).rgba;
|
float4 color = texRECT(samp0, uv0).rgba;
|
||||||
|
|
||||||
float4 c0 = max(color - float4(edge, edge, edge, edge) * 12, float4(0,0,0,0));
|
float4 c0 = max(color - float4(edge, edge, edge, edge) * 12, float4(0,0,0,0));
|
||||||
|
|
||||||
//Change this number to increase the pixel size.
|
//Change this number to increase the pixel size.
|
||||||
int pixelSize = 1;
|
int pixelSize = 1;
|
||||||
|
|
||||||
|
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
bool rr = false;
|
bool rr = false;
|
||||||
bool bb = false;
|
bool bb = false;
|
||||||
bool gg = false;
|
bool gg = false;
|
||||||
int val = uv0[0];
|
int val = uv0[0];
|
||||||
int val2 = uv0[1];
|
int val2 = uv0[1];
|
||||||
int count = 1;
|
int count = 1;
|
||||||
|
|
||||||
double colorN = 0.0;
|
double colorN = 0.0;
|
||||||
double colorB = 0.0;
|
double colorB = 0.0;
|
||||||
val = val % pixelSize;
|
val = val % pixelSize;
|
||||||
val2 = val2 % pixelSize;
|
val2 = val2 % pixelSize;
|
||||||
|
|
||||||
//if(val == 0 && val2 == 0 )
|
//if(val == 0 && val2 == 0 )
|
||||||
// c0 = texRECT(samp0, uv0).rgba;
|
// c0 = texRECT(samp0, uv0).rgba;
|
||||||
//else
|
//else
|
||||||
// c0 = texRECT(samp0, uv0-float2(val, val2)).rgba;
|
// c0 = texRECT(samp0, uv0-float2(val, val2)).rgba;
|
||||||
|
|
||||||
for(count = 1; count <= numColors ; count++){
|
for(count = 1; count <= numColors ; count++){
|
||||||
colorN = count / numColors;
|
colorN = count / numColors;
|
||||||
|
|
||||||
if ( c0.r <= colorN && c0.r >= colorB && rr == false ){
|
if ( c0.r <= colorN && c0.r >= colorB && rr == false ){
|
||||||
if (count == 1){
|
if (count == 1){
|
||||||
if(colorN >= 0.1)
|
if(colorN >= 0.1)
|
||||||
red = 0.01;
|
red = 0.01;
|
||||||
else
|
else
|
||||||
red = colorN;
|
red = colorN;
|
||||||
}
|
}
|
||||||
else if (count == numColors)
|
else if (count == numColors)
|
||||||
red = 0.95;
|
red = 0.95;
|
||||||
else
|
else
|
||||||
red = colorN ;
|
red = colorN ;
|
||||||
|
|
||||||
rr = true;
|
rr = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c0.b <= colorN && c0.b >= colorB && bb == false){
|
if (c0.b <= colorN && c0.b >= colorB && bb == false){
|
||||||
if (count == 1){
|
if (count == 1){
|
||||||
if(colorN >= 0.1)
|
if(colorN >= 0.1)
|
||||||
blue = 0.01;
|
blue = 0.01;
|
||||||
else
|
else
|
||||||
blue = colorN;
|
blue = colorN;
|
||||||
}
|
}
|
||||||
else if (count == numColors)
|
else if (count == numColors)
|
||||||
blue = 0.95;
|
blue = 0.95;
|
||||||
else
|
else
|
||||||
blue = colorN ;
|
blue = colorN ;
|
||||||
|
|
||||||
bb = true;
|
bb = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c0.g <= colorN && c0.g >= colorB && gg == false){
|
if (c0.g <= colorN && c0.g >= colorB && gg == false){
|
||||||
if (count == 1){
|
if (count == 1){
|
||||||
if(colorN >= 0.1)
|
if(colorN >= 0.1)
|
||||||
green = 0.01;
|
green = 0.01;
|
||||||
else
|
else
|
||||||
green = colorN;
|
green = colorN;
|
||||||
}
|
}
|
||||||
else if (count == numColors)
|
else if (count == numColors)
|
||||||
green = 0.95 ;
|
green = 0.95 ;
|
||||||
else
|
else
|
||||||
green = colorN ;
|
green = colorN ;
|
||||||
gg = true;
|
gg = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
colorB = count / numColors;
|
colorB = count / numColors;
|
||||||
if(rr == true && bb == true && gg == true)
|
if(rr == true && bb == true && gg == true)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, c0.a);
|
ocol0 = float4(red, green, blue, c0.a);
|
||||||
}
|
}
|
@ -1,38 +1,38 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0, in float2 uv1 : TEXCOORD1)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0, in float2 uv1 : TEXCOORD1)
|
||||||
{
|
{
|
||||||
float4 c_center = texRECT(samp0, uv0.xy).rgba;
|
float4 c_center = texRECT(samp0, uv0.xy).rgba;
|
||||||
|
|
||||||
float4 bloom_sum = float4(0.0, 0.0, 0.0, 0.0);
|
float4 bloom_sum = float4(0.0, 0.0, 0.0, 0.0);
|
||||||
uv0 += float2(0.3, 0.3);
|
uv0 += float2(0.3, 0.3);
|
||||||
float radius1 = 1.3;
|
float radius1 = 1.3;
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(-1.5, -1.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(-2.5, 0) * radius1);
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(-1.5, 1.5) * 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(0, 2.5) * radius1);
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(1.5, 1.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(2.5, 0) * radius1);
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(1.5, -1.5) * 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(0, -2.5) * radius1);
|
||||||
|
|
||||||
float radius2 = 4.6;
|
float radius2 = 4.6;
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(-1.5, -1.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(-2.5, 0) * radius2);
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(-1.5, 1.5) * 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(0, 2.5) * radius2);
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(1.5, 1.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(2.5, 0) * radius2);
|
||||||
bloom_sum += texRECT(samp0, uv0 + float2(1.5, -1.5) * 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(0, -2.5) * radius2);
|
||||||
|
|
||||||
bloom_sum *= 0.07;
|
bloom_sum *= 0.07;
|
||||||
bloom_sum -= float4(0.3, 0.3, 0.3, 0.3);
|
bloom_sum -= float4(0.3, 0.3, 0.3, 0.3);
|
||||||
bloom_sum = max(bloom_sum, float4(0,0,0,0));
|
bloom_sum = max(bloom_sum, float4(0,0,0,0));
|
||||||
|
|
||||||
float2 vpos = (uv1 - float2(.5, .5)) * 2;
|
float2 vpos = (uv1 - float2(.5, .5)) * 2;
|
||||||
float dist = (dot(vpos, vpos));
|
float dist = (dot(vpos, vpos));
|
||||||
dist = 1 - 0.4*dist;
|
dist = 1 - 0.4*dist;
|
||||||
|
|
||||||
ocol0 = (c_center * 0.7 + bloom_sum) * dist;
|
ocol0 = (c_center * 0.7 + bloom_sum) * dist;
|
||||||
}
|
}
|
||||||
|
14
brighten.txt
14
brighten.txt
@ -1,8 +1,8 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
c0 += c0 * 2;
|
c0 += c0 * 2;
|
||||||
ocol0 = float4(c0.r, c0.g, c0.b, c0.a);
|
ocol0 = float4(c0.r, c0.g, c0.b, c0.a);
|
||||||
}
|
}
|
38
chrismas.txt
38
chrismas.txt
@ -1,20 +1,20 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
|
|
||||||
if (c0.r < 0.35 || c0.b > 0.35)
|
if (c0.r < 0.35 || c0.b > 0.35)
|
||||||
{
|
{
|
||||||
green = c0.g + (c0.b / 2);
|
green = c0.g + (c0.b / 2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//red = 1 - c0.r + (c0.b / 2);
|
//red = 1 - c0.r + (c0.b / 2);
|
||||||
red = c0.r + 0.4;
|
red = c0.r + 0.4;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, green, 0.0, 1.0);
|
ocol0 = float4(red, green, 0.0, 1.0);
|
||||||
}
|
}
|
42
cool1.txt
42
cool1.txt
@ -1,22 +1,22 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
if (c0.r < 0.50 || c0.b > 0.5)
|
if (c0.r < 0.50 || c0.b > 0.5)
|
||||||
{
|
{
|
||||||
blue = c0.r;
|
blue = c0.r;
|
||||||
red = c0.g;
|
red = c0.g;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
blue = c0.r;
|
blue = c0.r;
|
||||||
green = c0.r;
|
green = c0.r;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
@ -1,36 +1,36 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float4 c1 = texRECT(samp0, uv0 - float2(1, 0)).rgba;
|
float4 c1 = texRECT(samp0, uv0 - float2(1, 0)).rgba;
|
||||||
float4 c2 = texRECT(samp0, uv0 - float2(0, 1)).rgba;
|
float4 c2 = texRECT(samp0, uv0 - float2(0, 1)).rgba;
|
||||||
float4 c3 = texRECT(samp0, uv0 + float2(1, 0)).rgba;
|
float4 c3 = texRECT(samp0, uv0 + float2(1, 0)).rgba;
|
||||||
float4 c4 = texRECT(samp0, uv0 + float2(0, 1)).rgba;
|
float4 c4 = texRECT(samp0, uv0 + float2(0, 1)).rgba;
|
||||||
|
|
||||||
float red = c0.r;
|
float red = c0.r;
|
||||||
float blue = c0.b;
|
float blue = c0.b;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
|
|
||||||
float red2 = (c1.r + c2.r + c3.r + c4.r) / 4;
|
float red2 = (c1.r + c2.r + c3.r + c4.r) / 4;
|
||||||
float blue2 = (c1.b + c2.b + c3.b + c4.b) / 4;
|
float blue2 = (c1.b + c2.b + c3.b + c4.b) / 4;
|
||||||
float green2 = (c1.g + c2.g + c3.g + c4.g) / 4;
|
float green2 = (c1.g + c2.g + c3.g + c4.g) / 4;
|
||||||
|
|
||||||
if(red2 > 0.3)
|
if(red2 > 0.3)
|
||||||
red = c0.r + c0.r / 2 ;
|
red = c0.r + c0.r / 2 ;
|
||||||
else
|
else
|
||||||
red = c0.r - c0.r / 2 ;
|
red = c0.r - c0.r / 2 ;
|
||||||
|
|
||||||
if(green2 > 0.3)
|
if(green2 > 0.3)
|
||||||
green = c0.g+ c0.g / 2;
|
green = c0.g+ c0.g / 2;
|
||||||
else
|
else
|
||||||
green = c0.g - c0.g / 2;
|
green = c0.g - c0.g / 2;
|
||||||
|
|
||||||
|
|
||||||
if(blue2 > 0.3)
|
if(blue2 > 0.3)
|
||||||
blue = c0.b+ c0.b / 2 ;
|
blue = c0.b+ c0.b / 2 ;
|
||||||
else
|
else
|
||||||
blue = c0.b - c0.b / 2 ;
|
blue = c0.b - c0.b / 2 ;
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, c0.a);
|
ocol0 = float4(red, green, blue, c0.a);
|
||||||
}
|
}
|
36
emboss.txt
36
emboss.txt
@ -1,19 +1,19 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float4 c1 = texRECT(samp0, uv0 + float2(5,5)).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 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 y2 = ((0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b)) / 3;
|
||||||
float red = c0.r;
|
float red = c0.r;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
float blue = c0.b;
|
float blue = c0.b;
|
||||||
float alpha = c0.a;
|
float alpha = c0.a;
|
||||||
|
|
||||||
red = y2 + (1 - y);
|
red = y2 + (1 - y);
|
||||||
green = y2 + (1 - y);
|
green = y2 + (1 - y);
|
||||||
blue = y2 + (1 - y);
|
blue = y2 + (1 - y);
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, alpha);
|
ocol0 = float4(red, green, blue, alpha);
|
||||||
}
|
}
|
76
fire.txt
76
fire.txt
@ -1,39 +1,39 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
red = c0.r;
|
red = c0.r;
|
||||||
|
|
||||||
|
|
||||||
if (c0.r > 0.0)
|
if (c0.r > 0.0)
|
||||||
{
|
{
|
||||||
if (c0.g > c0.r)
|
if (c0.g > c0.r)
|
||||||
{
|
{
|
||||||
green = (c0.g - (c0.g - c0.r)) / 3;
|
green = (c0.g - (c0.g - c0.r)) / 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c0.b > 0.0 && c0.r < 0.25)
|
if (c0.b > 0.0 && c0.r < 0.25)
|
||||||
{
|
{
|
||||||
red = c0.b;
|
red = c0.b;
|
||||||
green = c0.b / 3;
|
green = c0.b / 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c0.g > 0.0 && c0.r < 0.25)
|
if (c0.g > 0.0 && c0.r < 0.25)
|
||||||
{
|
{
|
||||||
red = c0.g;
|
red = c0.g;
|
||||||
green = c0.g / 3;
|
green = c0.g / 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (((c0.r + c0.g + c0.b) / 3) > 0.9)
|
if (((c0.r + c0.g + c0.b) / 3) > 0.9)
|
||||||
{
|
{
|
||||||
green = c0.r / 3;
|
green = c0.r / 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
28
fire2.txt
28
fire2.txt
@ -1,15 +1,15 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
float avg = (c0.r + c0.g + c0.b) / 3;
|
float avg = (c0.r + c0.g + c0.b) / 3;
|
||||||
|
|
||||||
red = c0.r + (c0.g / 2) + (c0.b / 3);
|
red = c0.r + (c0.g / 2) + (c0.b / 3);
|
||||||
green = c0.r / 3;
|
green = c0.r / 3;
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
@ -1,17 +1,17 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float4 c1 = texRECT(samp0, uv0 + float2(1,1)).rgba;
|
float4 c1 = texRECT(samp0, uv0 + float2(1,1)).rgba;
|
||||||
float4 c2 = texRECT(samp0, uv0 + float2(-1,-1)).rgba;
|
float4 c2 = texRECT(samp0, uv0 + float2(-1,-1)).rgba;
|
||||||
float red = c0.r;
|
float red = c0.r;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
float blue = c0.b;
|
float blue = c0.b;
|
||||||
float alpha = c0.a;
|
float alpha = c0.a;
|
||||||
|
|
||||||
red = c0.r - c1.b;
|
red = c0.r - c1.b;
|
||||||
blue = c0.b - c2.r + (c0.g - c0.r);
|
blue = c0.b - c2.r + (c0.g - c0.r);
|
||||||
|
|
||||||
ocol0 = float4(red, 0.0, blue, alpha);
|
ocol0 = float4(red, 0.0, blue, alpha);
|
||||||
}
|
}
|
@ -1,8 +1,8 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float avg = (c0.r + c0.g + c0.b) / 3.0;
|
float avg = (c0.r + c0.g + c0.b) / 3.0;
|
||||||
ocol0 = float4(avg, avg, avg, c0.a);
|
ocol0 = float4(avg, avg, avg, c0.a);
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
// Info: http://www.oreillynet.com/cs/user/view/cs_msg/8691
|
// 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);
|
float avg = (0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b);
|
||||||
ocol0 = float4(avg, avg, avg, c0.a);
|
ocol0 = float4(avg, avg, avg, c0.a);
|
||||||
}
|
}
|
||||||
|
14
invert.txt
14
invert.txt
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(1.0, 1.0, 1.0, 1.0) - c0;
|
ocol0 = float4(1.0, 1.0, 1.0, 1.0) - c0;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(0.0, 0.0, 0.7, 1.0) - c0;
|
ocol0 = float4(0.0, 0.0, 0.7, 1.0) - c0;
|
||||||
}
|
}
|
@ -1,9 +1,9 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float4 c1 = texRECT(samp0, uv0 + float2(5,5)).rgba;
|
float4 c1 = texRECT(samp0, uv0 + float2(5,5)).rgba;
|
||||||
|
|
||||||
ocol0 = c0 - c1;
|
ocol0 = c0 - c1;
|
||||||
}
|
}
|
@ -1,17 +1,17 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 emboss = (texRECT(samp0, uv0+1).rgba - texRECT(samp0, uv0-1).rgba)*2.0f;
|
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);
|
emboss -= (texRECT(samp0, uv0+float2(1,-1)).rgba - texRECT(samp0, uv0+float2(-1,1)).rgba);
|
||||||
float4 color = texRECT(samp0, uv0).rgba;
|
float4 color = texRECT(samp0, uv0).rgba;
|
||||||
if (color.r > 0.8 && color.b + color.b < 0.2)
|
if (color.r > 0.8 && color.b + color.b < 0.2)
|
||||||
ocol0 = float4(1,0,0,0);
|
ocol0 = float4(1,0,0,0);
|
||||||
else {
|
else {
|
||||||
color += emboss;
|
color += emboss;
|
||||||
if (dot(color.rgb, float3(0.3, 0.5, 0.2)) > 0.5)
|
if (dot(color.rgb, float3(0.3, 0.5, 0.2)) > 0.5)
|
||||||
ocol0 = float4(1,1,1,1);
|
ocol0 = float4(1,1,1,1);
|
||||||
else
|
else
|
||||||
ocol0 = float4(0,0,0,0);
|
ocol0 = float4(0,0,0,0);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,14 +1,14 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
|
|
||||||
if (c0.g < 0.50)
|
if (c0.g < 0.50)
|
||||||
{
|
{
|
||||||
green = c0.r + c0.b;
|
green = c0.r + c0.b;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(0.0, green, 0.0, 1.0);
|
ocol0 = float4(0.0, green, 0.0, 1.0);
|
||||||
}
|
}
|
100
nightvision2.txt
100
nightvision2.txt
@ -1,51 +1,51 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
//variables
|
//variables
|
||||||
int internalresolution = 1278;
|
int internalresolution = 1278;
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
//blur
|
//blur
|
||||||
float4 blurtotal = float4(0, 0, 0, 0);
|
float4 blurtotal = float4(0, 0, 0, 0);
|
||||||
float blursize = 1.5;
|
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, -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( blursize, 0));
|
blurtotal += texRECT(samp0, uv0 + float2( blursize, 0));
|
||||||
blurtotal += texRECT(samp0, uv0 + float2( 0, -blursize));
|
blurtotal += texRECT(samp0, uv0 + float2( 0, -blursize));
|
||||||
blurtotal += texRECT(samp0, uv0 + float2( 0, blursize));
|
blurtotal += texRECT(samp0, uv0 + float2( 0, blursize));
|
||||||
blurtotal *= 0.125;
|
blurtotal *= 0.125;
|
||||||
c0 = blurtotal;
|
c0 = blurtotal;
|
||||||
//greyscale
|
//greyscale
|
||||||
float grey = ((0.3 * c0.r) + (0.4 * c0.g) + (0.3 * c0.b));
|
float grey = ((0.3 * c0.r) + (0.4 * c0.g) + (0.3 * c0.b));
|
||||||
// brighten
|
// brighten
|
||||||
grey = grey * 0.5 + 0.7;
|
grey = grey * 0.5 + 0.7;
|
||||||
// darken edges
|
// darken edges
|
||||||
float x = uv0[0];
|
float x = uv0[0];
|
||||||
float y = uv0[1];
|
float y = uv0[1];
|
||||||
if (x > internalresolution/2) x = internalresolution-x;
|
if (x > internalresolution/2) x = internalresolution-x;
|
||||||
if (y > internalresolution/2) y = internalresolution-y;
|
if (y > internalresolution/2) y = internalresolution-y;
|
||||||
if (x > internalresolution/2*0.95) x = internalresolution/2*0.95;
|
if (x > internalresolution/2*0.95) x = internalresolution/2*0.95;
|
||||||
if (y > internalresolution/2*0.95) y = internalresolution/2*0.95;
|
if (y > internalresolution/2*0.95) y = internalresolution/2*0.95;
|
||||||
x = -x+641;
|
x = -x+641;
|
||||||
y = -y+641;
|
y = -y+641;
|
||||||
/*****inline square root routines*****/
|
/*****inline square root routines*****/
|
||||||
// bit of a performance bottleneck.
|
// bit of a performance bottleneck.
|
||||||
// neccessary to make the darkened area rounded
|
// neccessary to make the darkened area rounded
|
||||||
// instead of rhombus-shaped.
|
// instead of rhombus-shaped.
|
||||||
float sqrt=x/10;
|
float sqrt=x/10;
|
||||||
while((sqrt*sqrt) < x) sqrt+=0.1;
|
while((sqrt*sqrt) < x) sqrt+=0.1;
|
||||||
x = sqrt;
|
x = sqrt;
|
||||||
sqrt=y/10;
|
sqrt=y/10;
|
||||||
while((sqrt*sqrt) < y) sqrt+=0.1;
|
while((sqrt*sqrt) < y) sqrt+=0.1;
|
||||||
y = sqrt;
|
y = sqrt;
|
||||||
/*****end of inline square root routines*****/
|
/*****end of inline square root routines*****/
|
||||||
x *= 2;
|
x *= 2;
|
||||||
y *= 2;
|
y *= 2;
|
||||||
grey -= x/200;
|
grey -= x/200;
|
||||||
grey -= y/200;
|
grey -= y/200;
|
||||||
// output
|
// output
|
||||||
ocol0 = float4(0, grey, 0, 1.0);
|
ocol0 = float4(0, grey, 0, 1.0);
|
||||||
}
|
}
|
@ -1,56 +1,56 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
//variables
|
//variables
|
||||||
int internalresolution = 1278;
|
int internalresolution = 1278;
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
//blur
|
//blur
|
||||||
float4 blurtotal = float4(0, 0, 0, 0);
|
float4 blurtotal = float4(0, 0, 0, 0);
|
||||||
float blursize = 1.5;
|
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, -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( blursize, 0));
|
blurtotal += texRECT(samp0, uv0 + float2( blursize, 0));
|
||||||
blurtotal += texRECT(samp0, uv0 + float2( 0, -blursize));
|
blurtotal += texRECT(samp0, uv0 + float2( 0, -blursize));
|
||||||
blurtotal += texRECT(samp0, uv0 + float2( 0, blursize));
|
blurtotal += texRECT(samp0, uv0 + float2( 0, blursize));
|
||||||
blurtotal *= 0.125;
|
blurtotal *= 0.125;
|
||||||
c0 = blurtotal;
|
c0 = blurtotal;
|
||||||
//greyscale
|
//greyscale
|
||||||
float grey = ((0.3 * c0.r) + (0.4 * c0.g) + (0.3 * c0.b));
|
float grey = ((0.3 * c0.r) + (0.4 * c0.g) + (0.3 * c0.b));
|
||||||
// brighten and apply horizontal scanlines
|
// brighten and apply horizontal scanlines
|
||||||
// This would have been much simpler if I could get the stupid modulo (%) to work
|
// This would have been much simpler if I could get the stupid modulo (%) to work
|
||||||
// If anyone who is more well versed in Cg knows how to do this it'd be slightly more efficient
|
// If anyone who is more well versed in Cg knows how to do this it'd be slightly more efficient
|
||||||
// float lineIntensity = ((uv0[1] % 9) - 4) / 40;
|
// float lineIntensity = ((uv0[1] % 9) - 4) / 40;
|
||||||
float vPos = uv0[1] / 9;
|
float vPos = uv0[1] / 9;
|
||||||
float lineIntensity = (((vPos - (int)vPos) * 9) - 4) / 40;
|
float lineIntensity = (((vPos - (int)vPos) * 9) - 4) / 40;
|
||||||
grey = grey * 0.5 + 0.7 + lineIntensity;
|
grey = grey * 0.5 + 0.7 + lineIntensity;
|
||||||
// darken edges
|
// darken edges
|
||||||
float x = uv0[0];
|
float x = uv0[0];
|
||||||
float y = uv0[1];
|
float y = uv0[1];
|
||||||
if (x > internalresolution/2) x = internalresolution-x;
|
if (x > internalresolution/2) x = internalresolution-x;
|
||||||
if (y > internalresolution/2) y = internalresolution-y;
|
if (y > internalresolution/2) y = internalresolution-y;
|
||||||
if (x > internalresolution/2*0.95) x = internalresolution/2*0.95;
|
if (x > internalresolution/2*0.95) x = internalresolution/2*0.95;
|
||||||
if (y > internalresolution/2*0.95) y = internalresolution/2*0.95;
|
if (y > internalresolution/2*0.95) y = internalresolution/2*0.95;
|
||||||
x = -x+641;
|
x = -x+641;
|
||||||
y = -y+641;
|
y = -y+641;
|
||||||
/*****inline square root routines*****/
|
/*****inline square root routines*****/
|
||||||
// bit of a performance bottleneck.
|
// bit of a performance bottleneck.
|
||||||
// neccessary to make the darkened area rounded
|
// neccessary to make the darkened area rounded
|
||||||
// instead of rhombus-shaped.
|
// instead of rhombus-shaped.
|
||||||
float sqrt=x/10;
|
float sqrt=x/10;
|
||||||
while((sqrt*sqrt) < x) sqrt+=0.1;
|
while((sqrt*sqrt) < x) sqrt+=0.1;
|
||||||
x = sqrt;
|
x = sqrt;
|
||||||
sqrt=y/10;
|
sqrt=y/10;
|
||||||
while((sqrt*sqrt) < y) sqrt+=0.1;
|
while((sqrt*sqrt) < y) sqrt+=0.1;
|
||||||
y = sqrt;
|
y = sqrt;
|
||||||
/*****end of inline square root routines*****/
|
/*****end of inline square root routines*****/
|
||||||
x *= 2;
|
x *= 2;
|
||||||
y *= 2;
|
y *= 2;
|
||||||
grey -= x/200;
|
grey -= x/200;
|
||||||
grey -= y/200;
|
grey -= y/200;
|
||||||
// output
|
// output
|
||||||
ocol0 = float4(0, grey, 0, 1.0);
|
ocol0 = float4(0, grey, 0, 1.0);
|
||||||
}
|
}
|
@ -1,26 +1,26 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
if (c0.r > 0.25)
|
if (c0.r > 0.25)
|
||||||
{
|
{
|
||||||
red = c0.r;
|
red = c0.r;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c0.g > 0.25)
|
if (c0.g > 0.25)
|
||||||
{
|
{
|
||||||
green = c0.g;
|
green = c0.g;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c0.b > 0.25)
|
if (c0.b > 0.25)
|
||||||
{
|
{
|
||||||
blue = c0.b;
|
blue = c0.b;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
@ -1,21 +1,21 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
inline float bound(float color)
|
inline float bound(float color)
|
||||||
{
|
{
|
||||||
if (color < 0.35)
|
if (color < 0.35)
|
||||||
{
|
{
|
||||||
if (color < 0.25)
|
if (color < 0.25)
|
||||||
{
|
{
|
||||||
return color;
|
return color;
|
||||||
}
|
}
|
||||||
return 0.5;
|
return 0.5;
|
||||||
}
|
}
|
||||||
return 1.0;
|
return 1.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0 + float2(0,0)).rgba;
|
float4 c0 = texRECT(samp0, uv0 + float2(0,0)).rgba;
|
||||||
ocol0 = float4(bound(c0.r), bound(c0.g), bound(c0.b), c0.a);
|
ocol0 = float4(bound(c0.r), bound(c0.g), bound(c0.b), c0.a);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,69 +1,69 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = c0.r;
|
float red = c0.r;
|
||||||
float blue = c0.b;
|
float blue = c0.b;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
float factor = 2;
|
float factor = 2;
|
||||||
float max = 0.8;
|
float max = 0.8;
|
||||||
float min = 0.3;
|
float min = 0.3;
|
||||||
|
|
||||||
if(c0.r > c0.g && c0.b > c0.g){
|
if(c0.r > c0.g && c0.b > c0.g){
|
||||||
if(c0.r < c0.b + 0.05 && c0.b < c0.r + 0.05){
|
if(c0.r < c0.b + 0.05 && c0.b < c0.r + 0.05){
|
||||||
red = 0.7;
|
red = 0.7;
|
||||||
blue = 0.7;
|
blue = 0.7;
|
||||||
green = 0.05;
|
green = 0.05;
|
||||||
}
|
}
|
||||||
else if(c0.r > c0.b + 0.05){
|
else if(c0.r > c0.b + 0.05){
|
||||||
red = 0.7;
|
red = 0.7;
|
||||||
blue = 0.05;
|
blue = 0.05;
|
||||||
green = 0.05;
|
green = 0.05;
|
||||||
}
|
}
|
||||||
else if (c0.b > c0.r + 0.05){
|
else if (c0.b > c0.r + 0.05){
|
||||||
red = 0.05;
|
red = 0.05;
|
||||||
blue = 0.7;
|
blue = 0.7;
|
||||||
green = 0.05;
|
green = 0.05;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(c0.r > c0.b && c0.g > c0.b){
|
if(c0.r > c0.b && c0.g > c0.b){
|
||||||
if(c0.r < c0.g + 0.05 && c0.g < c0.r + 0.05){
|
if(c0.r < c0.g + 0.05 && c0.g < c0.r + 0.05){
|
||||||
red = 0.7;
|
red = 0.7;
|
||||||
blue = 0.05;
|
blue = 0.05;
|
||||||
green = 0.7;
|
green = 0.7;
|
||||||
}
|
}
|
||||||
else if(c0.r > c0.g + 0.05){
|
else if(c0.r > c0.g + 0.05){
|
||||||
red = 0.7;
|
red = 0.7;
|
||||||
blue = 0.05;
|
blue = 0.05;
|
||||||
green = 0.05;
|
green = 0.05;
|
||||||
}
|
}
|
||||||
else if (c0.g > c0.r + 0.05){
|
else if (c0.g > c0.r + 0.05){
|
||||||
red = 0.05;
|
red = 0.05;
|
||||||
blue = 0.05;
|
blue = 0.05;
|
||||||
green = 0.7;
|
green = 0.7;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(c0.g > c0.r && c0.b > c0.r){
|
if(c0.g > c0.r && c0.b > c0.r){
|
||||||
if(c0.g < c0.b + 0.05 && c0.b < c0.g + 0.05){
|
if(c0.g < c0.b + 0.05 && c0.b < c0.g + 0.05){
|
||||||
red = 0.05;
|
red = 0.05;
|
||||||
blue = 0.7;
|
blue = 0.7;
|
||||||
green = 0.7;
|
green = 0.7;
|
||||||
}
|
}
|
||||||
else if(c0.g > c0.b + 0.05){
|
else if(c0.g > c0.b + 0.05){
|
||||||
red = 0.05;
|
red = 0.05;
|
||||||
blue = 0.05;
|
blue = 0.05;
|
||||||
green = 0.7;
|
green = 0.7;
|
||||||
}
|
}
|
||||||
else if (c0.b > c0.g + 0.05){
|
else if (c0.b > c0.g + 0.05){
|
||||||
red = 0.05;
|
red = 0.05;
|
||||||
blue = 0.7;
|
blue = 0.7;
|
||||||
green = 0.05;
|
green = 0.05;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, c0.a);
|
ocol0 = float4(red, green, blue, c0.a);
|
||||||
}
|
}
|
24
sepia.txt
24
sepia.txt
@ -1,13 +1,13 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
// Same coefficients as grayscale2 at this point
|
// Same coefficients as grayscale2 at this point
|
||||||
float avg = (0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b);
|
float avg = (0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b);
|
||||||
float red=avg;
|
float red=avg;
|
||||||
// Not sure about these coefficients, they just seem to produce the proper yellow
|
// Not sure about these coefficients, they just seem to produce the proper yellow
|
||||||
float green=avg*.75;
|
float green=avg*.75;
|
||||||
float blue=avg*.5;
|
float blue=avg*.5;
|
||||||
ocol0 = float4(red, green, blue, c0.a);
|
ocol0 = float4(red, green, blue, c0.a);
|
||||||
}
|
}
|
32
sketchy.txt
32
sketchy.txt
@ -1,17 +1,17 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float4 tmp = float4(0, 0, 0, 0);
|
float4 tmp = float4(0, 0, 0, 0);
|
||||||
tmp += c0 - texRECT(samp0, uv0 + float2(2, 2)).rgba;
|
tmp += c0 - texRECT(samp0, uv0 + float2(2, 2)).rgba;
|
||||||
tmp += c0 - texRECT(samp0, uv0 - float2(2, 2)).rgba;
|
tmp += c0 - texRECT(samp0, uv0 - float2(2, 2)).rgba;
|
||||||
tmp += c0 - texRECT(samp0, uv0 + float2(2, -2)).rgba;
|
tmp += c0 - texRECT(samp0, uv0 + float2(2, -2)).rgba;
|
||||||
tmp += c0 - texRECT(samp0, uv0 - float2(2, -2)).rgba;
|
tmp += c0 - texRECT(samp0, uv0 - float2(2, -2)).rgba;
|
||||||
float grey = ((0.222 * tmp.r) + (0.707 * tmp.g) + (0.071 * tmp.b));
|
float grey = ((0.222 * tmp.r) + (0.707 * tmp.g) + (0.071 * tmp.b));
|
||||||
// get rid of the bottom line, as it is incorrect.
|
// get rid of the bottom line, as it is incorrect.
|
||||||
if (uv0[1] < 163)
|
if (uv0[1] < 163)
|
||||||
tmp = 1;
|
tmp = 1;
|
||||||
c0 = c0+1-grey*7;
|
c0 = c0+1-grey*7;
|
||||||
ocol0 = float4(c0.r, c0.g, c0.b, 1);
|
ocol0 = float4(c0.r, c0.g, c0.b, 1);
|
||||||
}
|
}
|
38
spookey1.txt
38
spookey1.txt
@ -1,20 +1,20 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
if (c0.r < 0.35 || c0.b > 0.5)
|
if (c0.r < 0.35 || c0.b > 0.5)
|
||||||
{
|
{
|
||||||
red = c0.g + c0.b;
|
red = c0.g + c0.b;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
red = c0.g + c0.b;
|
red = c0.g + c0.b;
|
||||||
blue = c0.r + c0.b;
|
blue = c0.r + c0.b;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, 0.0, blue, 1.0);
|
ocol0 = float4(red, 0.0, blue, 1.0);
|
||||||
}
|
}
|
42
spookey2.txt
42
spookey2.txt
@ -1,22 +1,22 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
if (c0.r < 0.35 || c0.b > 0.5)
|
if (c0.r < 0.35 || c0.b > 0.5)
|
||||||
{
|
{
|
||||||
red = c0.g + c0.b;
|
red = c0.g + c0.b;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
red = c0.g + c0.b;
|
red = c0.g + c0.b;
|
||||||
blue = c0.r + c0.b;
|
blue = c0.r + c0.b;
|
||||||
green = c0.r + c0.b;
|
green = c0.r + c0.b;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
@ -1,27 +1,27 @@
|
|||||||
// Omega's 3D Stereoscopic filtering
|
// Omega's 3D Stereoscopic filtering
|
||||||
// TODO: Need depth info!
|
// TODO: Need depth info!
|
||||||
|
|
||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba; // Source Color
|
float4 c0 = texRECT(samp0, uv0).rgba; // Source Color
|
||||||
float sep = 5;
|
float sep = 5;
|
||||||
float red = c0.r;
|
float red = c0.r;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
float blue = c0.b;
|
float blue = c0.b;
|
||||||
|
|
||||||
|
|
||||||
// Red Eye (Red)
|
// Red Eye (Red)
|
||||||
float4 c1 = texRECT(samp0, uv0 + float2(sep,0)).rgba;
|
float4 c1 = texRECT(samp0, uv0 + float2(sep,0)).rgba;
|
||||||
red = max(c0.r, c1.r);
|
red = max(c0.r, c1.r);
|
||||||
|
|
||||||
// Right Eye (Cyan)
|
// Right Eye (Cyan)
|
||||||
float4 c2 = texRECT(samp0, uv0 + float2(-sep,0)).rgba;
|
float4 c2 = texRECT(samp0, uv0 + float2(-sep,0)).rgba;
|
||||||
float cyan = (c2.g + c2.b) / 2;
|
float cyan = (c2.g + c2.b) / 2;
|
||||||
green = max(c0.g, cyan);
|
green = max(c0.g, cyan);
|
||||||
blue = max(c0.b, cyan);
|
blue = max(c0.b, cyan);
|
||||||
|
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, c0.a);
|
ocol0 = float4(red, green, blue, c0.a);
|
||||||
}
|
}
|
@ -1,26 +1,26 @@
|
|||||||
// Omega's 3D Stereoscopic filtering (Amber/Blue)
|
// Omega's 3D Stereoscopic filtering (Amber/Blue)
|
||||||
// TODO: Need depth info!
|
// TODO: Need depth info!
|
||||||
|
|
||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba; // Source Color
|
float4 c0 = texRECT(samp0, uv0).rgba; // Source Color
|
||||||
float sep = 5;
|
float sep = 5;
|
||||||
float red = c0.r;
|
float red = c0.r;
|
||||||
float green = c0.g;
|
float green = c0.g;
|
||||||
float blue = c0.b;
|
float blue = c0.b;
|
||||||
|
|
||||||
// Left Eye (Amber)
|
// Left Eye (Amber)
|
||||||
float4 c2 = texRECT(samp0, uv0 + float2(sep,0)).rgba;
|
float4 c2 = texRECT(samp0, uv0 + float2(sep,0)).rgba;
|
||||||
float amber = (c2.r + c2.g) / 2;
|
float amber = (c2.r + c2.g) / 2;
|
||||||
red = max(c0.r, amber);
|
red = max(c0.r, amber);
|
||||||
green = max(c0.g, amber);
|
green = max(c0.g, amber);
|
||||||
|
|
||||||
// Right Eye (Blue)
|
// Right Eye (Blue)
|
||||||
float4 c1 = texRECT(samp0, uv0 + float2(-sep,0)).rgba;
|
float4 c1 = texRECT(samp0, uv0 + float2(-sep,0)).rgba;
|
||||||
blue = max(c0.b, c1.b);
|
blue = max(c0.b, c1.b);
|
||||||
|
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, c0.a);
|
ocol0 = float4(red, green, blue, c0.a);
|
||||||
}
|
}
|
12
sunset.txt
12
sunset.txt
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.r*1.5, c0.g*1, c0.b*0.5, c0.a);
|
ocol0 = float4(c0.r*1.5, c0.g*1, c0.b*0.5, c0.a);
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.b, c0.g, c0.r, c0.a);
|
ocol0 = float4(c0.b, c0.g, c0.r, c0.a);
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.b, c0.r, c0.g, c0.a);
|
ocol0 = float4(c0.b, c0.r, c0.g, c0.a);
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.g, c0.b, c0.r, c0.a);
|
ocol0 = float4(c0.g, c0.b, c0.r, c0.a);
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.g, c0.r, c0.b, c0.a);
|
ocol0 = float4(c0.g, c0.r, c0.b, c0.a);
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
ocol0 = float4(c0.r, c0.b, c0.g, c0.a);
|
ocol0 = float4(c0.r, c0.b, c0.g, c0.a);
|
||||||
}
|
}
|
42
toxic.txt
42
toxic.txt
@ -1,22 +1,22 @@
|
|||||||
uniform samplerRECT samp0 : register(s0);
|
uniform samplerRECT samp0 : register(s0);
|
||||||
|
|
||||||
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
|
||||||
{
|
{
|
||||||
float4 c0 = texRECT(samp0, uv0).rgba;
|
float4 c0 = texRECT(samp0, uv0).rgba;
|
||||||
float red = 0.0;
|
float red = 0.0;
|
||||||
float green = 0.0;
|
float green = 0.0;
|
||||||
float blue = 0.0;
|
float blue = 0.0;
|
||||||
|
|
||||||
if (c0.r < 0.3 || c0.b > 0.5)
|
if (c0.r < 0.3 || c0.b > 0.5)
|
||||||
{
|
{
|
||||||
blue = c0.r + c0.b;
|
blue = c0.r + c0.b;
|
||||||
red = c0.g + c0.b / 2;
|
red = c0.g + c0.b / 2;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
red = c0.g + c0.b;
|
red = c0.g + c0.b;
|
||||||
green = c0.r + c0.b;
|
green = c0.r + c0.b;
|
||||||
}
|
}
|
||||||
|
|
||||||
ocol0 = float4(red, green, blue, 1.0);
|
ocol0 = float4(red, green, blue, 1.0);
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user