FS#25 - Change sf::PostFx to a more general purpose pixel shader class (sf::Shader)
Updated the PostFx sample, renamed to Shader Renamed all the static X::CanUseX() functions to X::IsAvailable() to make the API more consistent Moved .def files from /build/VC200X to /src in CSFML Minors fixes in CSFML git-svn-id: https://sfml.svn.sourceforge.net/svnroot/sfml/branches/sfml2@1258 4e206d99-4929-0410-ac5d-dfc041789085
This commit is contained in:
parent
63e07cec84
commit
d7bd00afc0
125 changed files with 1606 additions and 2348 deletions
BIN
dotnet/samples/bin/datas/shader/arial.ttf
Normal file
BIN
dotnet/samples/bin/datas/shader/arial.ttf
Normal file
Binary file not shown.
BIN
dotnet/samples/bin/datas/shader/background.jpg
Normal file
BIN
dotnet/samples/bin/datas/shader/background.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 52 KiB |
16
dotnet/samples/bin/datas/shader/blur.sfx
Normal file
16
dotnet/samples/bin/datas/shader/blur.sfx
Normal file
|
@ -0,0 +1,16 @@
|
|||
uniform sampler2D texture;
|
||||
uniform float offset;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec2 offx = vec2(offset, 0.0);
|
||||
vec2 offy = vec2(0.0, offset);
|
||||
|
||||
vec4 c0 = texture2D(texture, gl_TexCoord[0].xy);
|
||||
vec4 c1 = texture2D(texture, gl_TexCoord[0].xy - offy);
|
||||
vec4 c2 = texture2D(texture, gl_TexCoord[0].xy + offy);
|
||||
vec4 c3 = texture2D(texture, gl_TexCoord[0].xy - offx);
|
||||
vec4 c4 = texture2D(texture, gl_TexCoord[0].xy + offx);
|
||||
|
||||
gl_FragColor = gl_Color * (c0 * 0.2 + c1 * 0.2 + c2 * 0.2 + c3 * 0.2 + c4 * 0.2);
|
||||
}
|
11
dotnet/samples/bin/datas/shader/colorize.sfx
Normal file
11
dotnet/samples/bin/datas/shader/colorize.sfx
Normal file
|
@ -0,0 +1,11 @@
|
|||
uniform sampler2D texture;
|
||||
uniform vec3 color;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 pixel = texture2D(texture, gl_TexCoord[0].xy) * gl_Color;
|
||||
float gray = pixel.r * 0.39 + pixel.g * 0.50 + pixel.b * 0.11;
|
||||
|
||||
gl_FragColor = vec4(gray * color, 1.0) * 0.6 + pixel * 0.4;
|
||||
gl_FragColor.a = pixel.a;
|
||||
}
|
13
dotnet/samples/bin/datas/shader/fisheye.sfx
Normal file
13
dotnet/samples/bin/datas/shader/fisheye.sfx
Normal file
|
@ -0,0 +1,13 @@
|
|||
uniform sampler2D texture;
|
||||
uniform vec2 mouse;
|
||||
|
||||
void main()
|
||||
{
|
||||
float len = distance(gl_TexCoord[0].xy, mouse) * 7.0;
|
||||
|
||||
vec2 coords = gl_TexCoord[0].xy;
|
||||
if (len < 1.0)
|
||||
coords += (gl_TexCoord[0].xy - mouse) * len;
|
||||
|
||||
gl_FragColor = texture2D(texture, coords) * gl_Color;
|
||||
}
|
6
dotnet/samples/bin/datas/shader/nothing.sfx
Normal file
6
dotnet/samples/bin/datas/shader/nothing.sfx
Normal file
|
@ -0,0 +1,6 @@
|
|||
uniform sampler2D texture;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_FragColor = texture2D(texture, gl_TexCoord[0].xy) * gl_Color;
|
||||
}
|
10
dotnet/samples/bin/datas/shader/pixelate.sfx
Normal file
10
dotnet/samples/bin/datas/shader/pixelate.sfx
Normal file
|
@ -0,0 +1,10 @@
|
|||
uniform sampler2D texture;
|
||||
uniform vec2 mouse;
|
||||
|
||||
void main()
|
||||
{
|
||||
float factor = 5 + 100 * length(mouse);
|
||||
vec2 pos = floor(gl_TexCoord[0].xy * factor + 0.5) / factor;
|
||||
|
||||
gl_FragColor = texture2D(texture, pos) * gl_Color;
|
||||
}
|
BIN
dotnet/samples/bin/datas/shader/sprite.png
Normal file
BIN
dotnet/samples/bin/datas/shader/sprite.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.1 KiB |
BIN
dotnet/samples/bin/datas/shader/wave.jpg
Normal file
BIN
dotnet/samples/bin/datas/shader/wave.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
12
dotnet/samples/bin/datas/shader/wave.sfx
Normal file
12
dotnet/samples/bin/datas/shader/wave.sfx
Normal file
|
@ -0,0 +1,12 @@
|
|||
uniform sampler2D texture;
|
||||
uniform sampler2D wave;
|
||||
uniform vec2 offset;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec2 texoffset = texture2D(wave, (gl_TexCoord[0].xy * offset).xy);
|
||||
texoffset -= vec2(0.5, 0.5);
|
||||
texoffset *= 0.05;
|
||||
|
||||
gl_FragColor = texture2D(texture, gl_TexCoord[0].xy + texoffset) * gl_Color;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue