diff options
| author | chriscamacho <[email protected]> | 2019-09-22 20:28:50 +0100 |
|---|---|---|
| committer | Ray <[email protected]> | 2019-09-22 21:28:50 +0200 |
| commit | a679b0ccc015295ed8c305605b0bf19112f949f3 (patch) | |
| tree | 6763eee4263e93a2c1ab05964236f02bf5339db5 /examples/shaders/resources | |
| parent | acedf4a0d5f2cb721dc12cf56a176fe420e63d2e (diff) | |
| download | raylib-a679b0ccc015295ed8c305605b0bf19112f949f3.tar.gz raylib-a679b0ccc015295ed8c305605b0bf19112f949f3.zip | |
contributed simple shader example (#973)
Contributed simple shader example
Diffstat (limited to 'examples/shaders/resources')
| -rw-r--r-- | examples/shaders/resources/mask.png | bin | 0 -> 74820 bytes | |||
| -rw-r--r-- | examples/shaders/resources/plasma.png | bin | 0 -> 581880 bytes | |||
| -rw-r--r-- | examples/shaders/resources/shaders/glsl330/mask.fs | 21 | ||||
| -rw-r--r-- | examples/shaders/resources/shaders/glsl330/mask.vs | 21 |
4 files changed, 42 insertions, 0 deletions
diff --git a/examples/shaders/resources/mask.png b/examples/shaders/resources/mask.png Binary files differnew file mode 100644 index 00000000..06a25978 --- /dev/null +++ b/examples/shaders/resources/mask.png diff --git a/examples/shaders/resources/plasma.png b/examples/shaders/resources/plasma.png Binary files differnew file mode 100644 index 00000000..01c2d883 --- /dev/null +++ b/examples/shaders/resources/plasma.png diff --git a/examples/shaders/resources/shaders/glsl330/mask.fs b/examples/shaders/resources/shaders/glsl330/mask.fs new file mode 100644 index 00000000..a0627909 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/mask.fs @@ -0,0 +1,21 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; + +// Input uniform values +uniform sampler2D texture0; +uniform sampler2D mask; +uniform int frame; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + vec4 maskColour = texture(mask, fragTexCoord+vec2(sin(-frame/150.0)/10.0,cos(-frame/170.0)/10.0)); + if (maskColour.r < 0.25) discard; + vec4 texelColor = texture(texture0, fragTexCoord+vec2(sin(frame/90.0)/8.0,cos(frame/60.0)/8.0)); + + finalColor = texelColor * maskColour; +} diff --git a/examples/shaders/resources/shaders/glsl330/mask.vs b/examples/shaders/resources/shaders/glsl330/mask.vs new file mode 100644 index 00000000..66a15161 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/mask.vs @@ -0,0 +1,21 @@ +#version 330 + +// Input vertex attributes +in vec3 vertexPosition; +in vec2 vertexTexCoord; + +// Input uniform values +uniform mat4 mvp; +uniform mat4 matModel; + +// Output vertex attributes (to fragment shader) +out vec2 fragTexCoord; + +void main() +{ + // Send vertex attributes to fragment shader + fragTexCoord = vertexTexCoord; + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} |
