Renamed / moved / updated the SFML.Net examples (still in progress... having troubles with SVN)
git-svn-id: https://sfml.svn.sourceforge.net/svnroot/sfml/branches/sfml2@1560 4e206d99-4929-0410-ac5d-dfc041789085
This commit is contained in:
parent
002902319c
commit
2d83514452
28 changed files with 103 additions and 121 deletions
|
@ -4,7 +4,7 @@ using SFML;
|
|||
using SFML.Graphics;
|
||||
using SFML.Window;
|
||||
|
||||
namespace sample_shader
|
||||
namespace shader
|
||||
{
|
||||
/// <summary>
|
||||
/// A class to simplify shader selection
|
||||
|
@ -86,26 +86,26 @@ namespace sample_shader
|
|||
RenderImage image = new RenderImage(window.Width, window.Height);
|
||||
|
||||
// Load a background image to display
|
||||
Sprite background = new Sprite(new Image("datas/shader/background.jpg"));
|
||||
Sprite background = new Sprite(new Image("resources/background.jpg"));
|
||||
background.Image.Smooth = false;
|
||||
|
||||
// Load a sprite which we'll move into the scene
|
||||
Sprite entity = new Sprite(new Image("datas/shader/sprite.png"));
|
||||
Sprite entity = new Sprite(new Image("resources/sprite.png"));
|
||||
|
||||
// Load the text font
|
||||
Font font = new Font("datas/shader/arial.ttf");
|
||||
Font font = new Font("resources/arial.ttf");
|
||||
|
||||
// Load the image needed for the wave effect
|
||||
Image waveImage = new Image("datas/shader/wave.jpg");
|
||||
Image waveImage = new Image("resources/wave.jpg");
|
||||
|
||||
// Load all effects
|
||||
shaders = new Dictionary<string, Shader>();
|
||||
shaders["nothing"] = new Shader("datas/shader/nothing.sfx");
|
||||
shaders["blur"] = new Shader("datas/shader/blur.sfx");
|
||||
shaders["colorize"] = new Shader("datas/shader/colorize.sfx");
|
||||
shaders["fisheye"] = new Shader("datas/shader/fisheye.sfx");
|
||||
shaders["wave"] = new Shader("datas/shader/wave.sfx");
|
||||
shaders["pixelate"] = new Shader("datas/shader/pixelate.sfx");
|
||||
shaders["nothing"] = new Shader("resources/nothing.sfx");
|
||||
shaders["blur"] = new Shader("resources/blur.sfx");
|
||||
shaders["colorize"] = new Shader("resources/colorize.sfx");
|
||||
shaders["fisheye"] = new Shader("resources/fisheye.sfx");
|
||||
shaders["wave"] = new Shader("resources/wave.sfx");
|
||||
shaders["pixelate"] = new Shader("resources/pixelate.sfx");
|
||||
backgroundShader = new ShaderSelector(shaders);
|
||||
entityShader = new ShaderSelector(shaders);
|
||||
globalShader = new ShaderSelector(shaders);
|
||||
|
|
BIN
dotnet/examples/shader/resources/arial.ttf
Normal file
BIN
dotnet/examples/shader/resources/arial.ttf
Normal file
Binary file not shown.
BIN
dotnet/examples/shader/resources/background.jpg
Normal file
BIN
dotnet/examples/shader/resources/background.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 52 KiB |
16
dotnet/examples/shader/resources/blur.sfx
Normal file
16
dotnet/examples/shader/resources/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/examples/shader/resources/colorize.sfx
Normal file
11
dotnet/examples/shader/resources/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/examples/shader/resources/fisheye.sfx
Normal file
13
dotnet/examples/shader/resources/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/examples/shader/resources/nothing.sfx
Normal file
6
dotnet/examples/shader/resources/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/examples/shader/resources/pixelate.sfx
Normal file
10
dotnet/examples/shader/resources/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/examples/shader/resources/sprite.png
Normal file
BIN
dotnet/examples/shader/resources/sprite.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.1 KiB |
BIN
dotnet/examples/shader/resources/wave.jpg
Normal file
BIN
dotnet/examples/shader/resources/wave.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
12
dotnet/examples/shader/resources/wave.sfx
Normal file
12
dotnet/examples/shader/resources/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;
|
||||
}
|
|
@ -7,20 +7,20 @@
|
|||
<ProjectGuid>{9D4738F7-34EA-433A-A765-AF85A52A174D}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>sample_shader</RootNamespace>
|
||||
<RootNamespace>shader</RootNamespace>
|
||||
<AssemblyName>shader</AssemblyName>
|
||||
<FileUpgradeFlags>
|
||||
</FileUpgradeFlags>
|
||||
<OldToolsVersion>2.0</OldToolsVersion>
|
||||
<UpgradeBackupLocation>
|
||||
</UpgradeBackupLocation>
|
||||
<StartupObject>sample_shader.Program</StartupObject>
|
||||
<StartupObject>shader.Program</StartupObject>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\bin\</OutputPath>
|
||||
<OutputPath>.\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
Loading…
Add table
Add a link
Reference in a new issue