From 1c0cc775732201f4c4d3ee0d6772be786b3b4aa1 Mon Sep 17 00:00:00 2001 From: Uneven Prankster Date: Sun, 15 Oct 2023 21:28:29 -0300 Subject: A lot has certainly happened! --- .../resources/shaders/glsl430/gol_render.glsl | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 raylib/examples/others/resources/shaders/glsl430/gol_render.glsl (limited to 'raylib/examples/others/resources/shaders/glsl430/gol_render.glsl') diff --git a/raylib/examples/others/resources/shaders/glsl430/gol_render.glsl b/raylib/examples/others/resources/shaders/glsl430/gol_render.glsl new file mode 100644 index 0000000..97a1e99 --- /dev/null +++ b/raylib/examples/others/resources/shaders/glsl430/gol_render.glsl @@ -0,0 +1,29 @@ +#version 430 + +// Game of Life rendering shader +// Just renders the content of the ssbo at binding 1 to screen + +#define GOL_WIDTH 768 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; + +// Output fragment color +out vec4 finalColor; + +// Input game of life grid. +layout(std430, binding = 1) readonly buffer golLayout +{ + uint golBuffer[]; +}; + +// Output resolution +uniform vec2 resolution; + +void main() +{ + ivec2 coords = ivec2(fragTexCoord*resolution); + + if ((golBuffer[coords.x + coords.y*uvec2(resolution).x]) == 1) finalColor = vec4(1.0); + else finalColor = vec4(0.0, 0.0, 0.0, 1.0); +} -- cgit v1.2.3