diff options
Diffstat (limited to 'uniform_buffer/shaders')
-rw-r--r-- | uniform_buffer/shaders/color_cube.fs | 9 | ||||
-rw-r--r-- | uniform_buffer/shaders/color_cube.vs | 16 | ||||
-rw-r--r-- | uniform_buffer/shaders/cube.fs | 13 | ||||
-rw-r--r-- | uniform_buffer/shaders/cube.vs | 21 | ||||
-rw-r--r-- | uniform_buffer/shaders/skybox.fs | 13 | ||||
-rw-r--r-- | uniform_buffer/shaders/skybox.vs | 19 |
6 files changed, 91 insertions, 0 deletions
diff --git a/uniform_buffer/shaders/color_cube.fs b/uniform_buffer/shaders/color_cube.fs new file mode 100644 index 0000000..8aa5add --- /dev/null +++ b/uniform_buffer/shaders/color_cube.fs @@ -0,0 +1,9 @@ +#version 330 core + +out vec4 frag_color; + +void +main(void) +{ + frag_color = vec4(1.0f, 0.0f, 0.0f, 1.0f); +} diff --git a/uniform_buffer/shaders/color_cube.vs b/uniform_buffer/shaders/color_cube.vs new file mode 100644 index 0000000..630242d --- /dev/null +++ b/uniform_buffer/shaders/color_cube.vs @@ -0,0 +1,16 @@ +#version 330 core +layout(location = 0) in vec3 apos; + +layout(std140) uniform Matrices +{ + mat4 projection; + mat4 view; +}; + +uniform mat4 model; + +void +main(void) +{ + gl_Position = projection*view*model*vec4(apos, 1.0f); +} diff --git a/uniform_buffer/shaders/cube.fs b/uniform_buffer/shaders/cube.fs new file mode 100644 index 0000000..f58c5d3 --- /dev/null +++ b/uniform_buffer/shaders/cube.fs @@ -0,0 +1,13 @@ +#version 330 core + +out vec4 frag_color; + +in vec2 tex_coords; + +uniform sampler2D texture1; + +void +main(void) +{ + frag_color = texture(texture1, tex_coords); +} diff --git a/uniform_buffer/shaders/cube.vs b/uniform_buffer/shaders/cube.vs new file mode 100644 index 0000000..cb0b7bf --- /dev/null +++ b/uniform_buffer/shaders/cube.vs @@ -0,0 +1,21 @@ +#version 330 core + +layout(location = 0) in vec3 apos; +layout(location = 1) in vec2 atex_coords; + +layout(std140) uniform Matrices +{ + uniform mat4 projection; + uniform mat4 view; +}; + +uniform mat4 model; + +out vec2 tex_coords; + +void +main(void) +{ + gl_Position = projection*view*model*vec4(apos, 1.0f); + tex_coords = atex_coords; +} diff --git a/uniform_buffer/shaders/skybox.fs b/uniform_buffer/shaders/skybox.fs new file mode 100644 index 0000000..bf69c8b --- /dev/null +++ b/uniform_buffer/shaders/skybox.fs @@ -0,0 +1,13 @@ +#version 330 core + +in vec3 tex_coords; + +out vec4 frag_color; + +uniform samplerCube skybox; + +void +main(void) +{ + frag_color = texture(skybox, tex_coords); +} diff --git a/uniform_buffer/shaders/skybox.vs b/uniform_buffer/shaders/skybox.vs new file mode 100644 index 0000000..36a07ed --- /dev/null +++ b/uniform_buffer/shaders/skybox.vs @@ -0,0 +1,19 @@ +#version 330 core + +layout(location = 0) in vec3 apos; + +out vec3 tex_coords; + +layout(std140) uniform Matrices +{ + uniform mat4 projection; + uniform mat4 view; +}; + +void +main(void) +{ + tex_coords = apos; + vec4 pos = projection*view*vec4(apos, 1.0f); + gl_Position = pos.xyww; +} |