diff --git a/compile_shaders.sh b/compile_shaders.sh new file mode 100755 index 0000000..3f675e2 --- /dev/null +++ b/compile_shaders.sh @@ -0,0 +1,3 @@ +#!/bin/bash +glslc shaders/shader.vert -o shaders/shader.vert.spv +glslc shaders/shader.frag -o shaders/shader.vert.spv diff --git a/shaders/shader.frag b/shaders/shader.frag new file mode 100644 index 0000000..43674b2 --- /dev/null +++ b/shaders/shader.frag @@ -0,0 +1,7 @@ +#version 450 + +layout (location = 0) out vec4 outColor; + +void main() { + outColor = vec4(0.0, 1.0, 0.0, 1.0); +} diff --git a/shaders/shader.vert b/shaders/shader.vert new file mode 100644 index 0000000..0fb555d --- /dev/null +++ b/shaders/shader.vert @@ -0,0 +1,11 @@ +#version 450 + +vec2 positions[3] = vec2[] ( + vec2(0.0,-0.5), + vec2(0.5,0.5), + vec2(-0.5,0.5) +); + +void main() { + gl_Position = vec4(positions[gl_VertexIndex], 0.0, 1.0); +} diff --git a/shaders/shader.vert.spv b/shaders/shader.vert.spv new file mode 100644 index 0000000..47d2768 Binary files /dev/null and b/shaders/shader.vert.spv differ diff --git a/src/yave_graphics_pipeline.hpp b/src/yave_graphics_pipeline.hpp new file mode 100644 index 0000000..39ed6be --- /dev/null +++ b/src/yave_graphics_pipeline.hpp @@ -0,0 +1,15 @@ +#pragma once + +#include + +namespace yave { + +class YaveGrPipeline { + public: + YaveGrPipeline(const std::string& vertFilepath, const std::string& fragFilepath); + + private: + +}; + +} // namespace yave